亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android實現圖片文字輪播特效

2020-04-11 11:02:10
字體:
來源:轉載
供稿:網友

本文實例講解了Android實現圖片文字輪播特效的詳細代碼,分享給大家供大家參考,具體內容如下

圖片輪播是類似知乎日報上的一個輪播效果,如下圖。

好了直接進入正題,首先是出示一下效果:

MainActivity:

import java.util.ArrayList; import java.util.List; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit;  import android.os.Bundle; import android.app.Activity; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.ImageView.ScaleType; import android.widget.LinearLayout; import android.widget.TextView;  public class MainActivity extends Activity {    //viewpager   private ViewPager view_pager;   private LinearLayout ll_dotGroup;   private TextView newsTitle;   private int imgResIds[] = new int[]{R.drawable.a, R.drawable.b,       R.drawable.c, R.drawable.d, R.drawable.b};   //存儲5張圖片   private String textview[]=new String[]{"12412515125","fawfafawf"       ,"13f1f12f211","1251f1f12","1t1f12f121"};   //存儲5個目錄   private int curIndex = 0;   //用來記錄當前滾動的位置   PicsAdapter picsAdapter;    @Override   protected void onCreate(Bundle savedInstanceState) {     super.onCreate(savedInstanceState);     setContentView(R.layout.activity_main);      setViewPager();    }    private void setViewPager() {      newsTitle=(TextView)findViewById(R.id.NewsTitle);     view_pager = (ViewPager) findViewById(R.id.view_pager);     ll_dotGroup = (LinearLayout) findViewById(R.id.dotgroup);      picsAdapter = new PicsAdapter(); // 創建適配器     picsAdapter.setData(imgResIds);     view_pager.setAdapter(picsAdapter); // 設置適配器      view_pager.setOnPageChangeListener(new MyPageChangeListener()); //設置頁面切換監聽器      initPoints(imgResIds.length); // 初始化圖片小圓點     startAutoScroll(); // 開啟自動播放   }     // 初始化圖片輪播的小圓點和目錄   private void initPoints(int count) {     for (int i = 0; i < count; i++) {        ImageView iv = new ImageView(this);       LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(           20, 20);       params.setMargins(0, 0, 20, 0);       iv.setLayoutParams(params);        iv.setImageResource(R.drawable.dot1);        ll_dotGroup.addView(iv);      }     ((ImageView) ll_dotGroup.getChildAt(curIndex))         .setImageResource(R.drawable.dot2);      newsTitle.setText(textview[curIndex]);   }    // 自動播放   private void startAutoScroll() {     ScheduledExecutorService scheduledExecutorService = Executors         .newSingleThreadScheduledExecutor();     // 每隔4秒鐘切換一張圖片     scheduledExecutorService.scheduleWithFixedDelay(new ViewPagerTask(), 5,         4, TimeUnit.SECONDS);   }    // 切換圖片任務   private class ViewPagerTask implements Runnable {     @Override     public void run() {        runOnUiThread(new Runnable() {         @Override         public void run() {           int count = picsAdapter.getCount();           view_pager.setCurrentItem((curIndex + 1) % count);         }       });     }   }    // 定義ViewPager控件頁面切換監聽器   class MyPageChangeListener implements OnPageChangeListener {      @Override     public void onPageScrolled(int position, float positionOffset,                   int positionOffsetPixels) {     }      @Override     public void onPageSelected(int position) {       ImageView imageView1 = (ImageView) ll_dotGroup.getChildAt(position);       ImageView imageView2 = (ImageView) ll_dotGroup.getChildAt(curIndex);       if (imageView1 != null) {         imageView1.setImageResource(R.drawable.dot2);       }       if (imageView2 != null) {         imageView2.setImageResource(R.drawable.dot1);       }       curIndex = position;       newsTitle.setText(textview[curIndex]);      }       boolean b = false;      @Override     public void onPageScrollStateChanged(int state) {       //這段代碼可不加,主要功能是實現切換到末尾后返回到第一張       switch (state) {         case 1:// 手勢滑動           b = false;           break;         case 2:// 界面切換中           b = true;           break;         case 0:// 滑動結束,即切換完畢或者加載完畢           // 當前為最后一張,此時從右向左滑,則切換到第一張           if (view_pager.getCurrentItem() == view_pager.getAdapter()               .getCount() - 1 && !b) {             view_pager.setCurrentItem(0);           }           // 當前為第一張,此時從左向右滑,則切換到最后一張           else if (view_pager.getCurrentItem() == 0 && !b) {             view_pager.setCurrentItem(view_pager.getAdapter()                 .getCount() - 1);           }           break;          default:           break;       }     }   }    // 定義ViewPager控件適配器   class PicsAdapter extends PagerAdapter {      private List<ImageView> views = new ArrayList<ImageView>();      @Override     public int getCount() {       if (views == null) {         return 0;       }       return views.size();     }      public void setData(int[] imgResIds) {       for (int i = 0; i < imgResIds.length; i++) {         ImageView iv = new ImageView(MainActivity.this);         ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(             ViewGroup.LayoutParams.MATCH_PARENT,             ViewGroup.LayoutParams.MATCH_PARENT);         iv.setLayoutParams(params);         iv.setScaleType(ScaleType.FIT_XY);         //設置ImageView的屬性         iv.setImageResource(imgResIds[i]);         views.add(iv);       }     }      public Object getItem(int position) {       if (position < getCount())         return views.get(position);       return null;     }      @Override     public boolean isViewFromObject(View arg0, Object arg1) {       return arg0 == arg1;     }      @Override     public void destroyItem(View container, int position, Object object) {        if (position < views.size())         ((ViewPager) container).removeView(views.get(position));     }      @Override     public int getItemPosition(Object object) {       return views.indexOf(object);     }      @Override     public Object instantiateItem(View container, int position) {       if (position < views.size()) {         final ImageView imageView = views.get(position);         ((ViewPager) container).addView(imageView);         return views.get(position);       }       return null;     }    }  } 

activity_main:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   xmlns:tools="http://schemas.android.com/tools"   android:layout_width="match_parent"   android:layout_height="match_parent"   tools:context=".MainActivity" >    <RelativeLayout     android:layout_width="match_parent"     android:layout_height="150dp"     android:layout_marginBottom="5dp"     android:orientation="vertical" >      <android.support.v4.view.ViewPager       android:id="@+id/view_pager"       android:layout_width="match_parent"       android:layout_height="match_parent"       android:layout_gravity="center" >     </android.support.v4.view.ViewPager>      <RelativeLayout       android:layout_width="match_parent"       android:layout_height="wrap_content"       android:layout_alignParentBottom="true"       android:background="@drawable/focus_bg"       >       <TextView         android:id="@+id/NewsTitle"         android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:text="我校交換生演講比賽奪冠 美國華盛本大學萬里發來賀電"         android:paddingTop="10dp"         android:paddingBottom="8dp"         android:paddingLeft="10dp"         android:paddingRight="100dp"         android:textSize="15sp"         android:textColor="#fff"/>     <LinearLayout       android:id="@+id/dotgroup"       android:layout_width="wrap_content"       android:layout_height="wrap_content"       android:layout_alignParentRight="true"       android:paddingTop="23dp"       android:paddingRight="10dp"       android:gravity="center"       android:layout_marginBottom="15dp"       android:orientation="horizontal" >     </LinearLayout>   </RelativeLayout>   </RelativeLayout>  </RelativeLayout>

 以上就是關于Android實現圖片文字輪播特效講解,希望對大家的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲第一天堂av| 日韩一区二区久久久| 成人福利在线观看| 亚洲精品电影网站| 青青草一区二区| 国产91久久婷婷一区二区| 91青草视频久久| 国产精品嫩草影院久久久| 亚洲精品一区二三区不卡| 亚洲免费伊人电影在线观看av| 亚洲精品久久久久久久久久久| 26uuu国产精品视频| 国产成人免费91av在线| 欧美一区视频在线| 亚洲最大成人网色| 不卡av电影在线观看| 久久久综合av| 91精品久久久久| 国模精品一区二区三区色天香| 亚洲精品国产欧美| 亚洲国产精品一区二区三区| 日韩中文理论片| 欧美日本高清一区| 91在线视频导航| 久久天天躁夜夜躁狠狠躁2022| 亚洲aaa激情| 欧亚精品中文字幕| 国产日韩精品视频| 在线看福利67194| 中文字幕亚洲一区在线观看| 裸体女人亚洲精品一区| 日本久久91av| 狠狠躁夜夜躁人人爽天天天天97| 亚洲永久免费观看| 国产欧美精品一区二区三区介绍| www.国产一区| www.亚洲免费视频| 亚洲精品国产美女| 国产视频精品免费播放| 日韩av片永久免费网站| 538国产精品一区二区在线| 在线成人免费网站| 高清亚洲成在人网站天堂| 欧美插天视频在线播放| 最近日韩中文字幕中文| 精品国产依人香蕉在线精品| 欧美在线一区二区三区四| 日韩欧美国产一区二区| 青草成人免费视频| 欧美一级黄色网| 97视频色精品| 日韩在线欧美在线国产在线| 韩国精品美女www爽爽爽视频| 欧美xxxx18性欧美| 日韩中文在线不卡| 国产成人精品一区| 欧美丰满少妇xxxx| 成人激情综合网| 欧美区在线播放| 欧美主播福利视频| 亚洲综合在线播放| 国产综合香蕉五月婷在线| 欧美成人午夜激情视频| 国产精品亚洲激情| 久久激情五月丁香伊人| 亚洲天堂av图片| 久久国产精品久久精品| 这里只有精品在线播放| 成人免费视频网址| 97香蕉超级碰碰久久免费的优势| 欧美久久精品一级黑人c片| 丝袜情趣国产精品| 红桃av永久久久| 精品亚洲一区二区三区在线播放| 国产亚洲美女精品久久久| 久久久久国产一区二区三区| 91日本在线观看| 久久久久久97| 欧美放荡办公室videos4k| 国产精品偷伦视频免费观看国产| 国产精品一区二区久久精品| 国产午夜精品全部视频在线播放| 精品国产一区二区三区在线观看| 国产精品久久久久久久久久小说| 欧美精品一区二区三区国产精品| 久久综合五月天| 色偷偷亚洲男人天堂| 国产免费观看久久黄| 欧美日韩国产中文精品字幕自在自线| 激情亚洲一区二区三区四区| 4k岛国日韩精品**专区| 久久天天躁夜夜躁狠狠躁2022| 亚洲午夜精品久久久久久久久久久久| 97国产精品人人爽人人做| 欧美性在线观看| 精品无人区太爽高潮在线播放| 88xx成人精品| 日韩中文字幕在线播放| 成人黄色免费网站在线观看| 这里只有精品视频| 成人中心免费视频| 国产精品久在线观看| 日本国产精品视频| 国产91色在线| 青青草一区二区| 成人欧美在线观看| 日韩在线免费高清视频| 亚洲欧美制服综合另类| 国产精品第一页在线| 2018日韩中文字幕| 精品久久久91| 欧美日韩中文在线观看| 成人做爽爽免费视频| 亚洲国产精品久久| 日产日韩在线亚洲欧美| 88xx成人精品| 亚洲综合小说区| 国产精品老牛影院在线观看| 国产婷婷97碰碰久久人人蜜臀| 欧美成人精品一区二区三区| 日韩亚洲第一页| 国产精品久久91| 国产精品主播视频| 国产精品欧美亚洲777777| 日韩中文字幕在线视频播放| 亚洲自拍小视频免费观看| 精品国产一区二区三区四区在线观看| 国产精品精品视频| 国产日产亚洲精品| 欧美在线观看日本一区| 成人444kkkk在线观看| 亚洲精品久久久久国产| 亚洲性xxxx| 欧美另类精品xxxx孕妇| 亚洲欧美日韩国产成人| 国产精品亚洲一区二区三区| 亚洲精品国产品国语在线| 日本19禁啪啪免费观看www| 成人免费看片视频| 91精品国产91久久久久久久久| 中文字幕亚洲天堂| 欧洲中文字幕国产精品| 亚洲人午夜精品| 国产精品99久久久久久久久| 精品国产精品三级精品av网址| 久久久免费精品视频| 欧美成人免费大片| 欧美日韩成人在线视频| 日韩在线视频免费观看高清中文| 日韩精品在线视频观看| 欧美精品中文字幕一区| 92看片淫黄大片欧美看国产片| 国产精品久久久久久久美男| 51视频国产精品一区二区| 亚洲国产小视频在线观看| 日韩精品在线免费观看| 国产精彩精品视频| 日韩激情视频在线| 国产精品高清免费在线观看| 国产激情视频一区| 国产大片精品免费永久看nba| 欧美日韩亚洲系列| 亚洲最大激情中文字幕| 精品久久久久久中文字幕一区奶水|