Android ViewPager的簡單使用

來源:互聯網
上載者:User

標籤:des   android   http   io   ar   color   os   使用   sp   

package test.view.weitop;public class AnimActivity extends BaseActivity {private View vline;private int width = 0;private ViewPager mViewPager;private PagerTabStrip pagerTabStrip;private Button leftBtn,rightBtn;private int[] drawableResIds = {R.drawable.tip1,R.drawable.tip2};int w;@Overrideprotected void onCreate(Bundle saveInstance) {super.onCreate(saveInstance);setContentView(R.layout.anim_layout);w = getWindow().getWindowManager().getDefaultDisplay().getWidth();vline = findViewById(R.id.line);LayoutParams lp = vline.getLayoutParams();width = lp.width = w / 2;vline.setLayoutParams(lp);vline.setTag("0");leftBtn = (Button) findViewById(R.id.fade_anim_left);rightBtn = (Button) findViewById(R.id.fade_anim_right);mViewPager = (ViewPager) findViewById(R.id.anim_view_pager);/*pagerTabStrip = (PagerTabStrip) mViewPager.findViewById(R.id.anim_view_pager_tabsctrip);    pagerTabStrip.setTabIndicatorColor(getResources().getColor(R.color.red));      pagerTabStrip.setDrawFullUnderline(false);     pagerTabStrip.setBackgroundColor(getResources().getColor(R.color.transparent));     pagerTabStrip.setTextSpacing(50); */mViewPager.setAdapter(new ViewPagerAdapter());mViewPager.setOnPageChangeListener(pageChangedListener);}private  OnPageChangeListener  pageChangedListener = new OnPageChangeListener() {@Overridepublic void onPageSelected(int position) {Log.e("ViewPager", "position===>"+position);setTabItem(position);}@SuppressLint("NewApi")@Overridepublic void onPageScrolled(int arg0, float arg1, int arg2) {Log.d("ViewPager", "arg0="+arg0+"  arg1="+arg1+"   arg2="+arg2);}@Overridepublic void onPageScrollStateChanged(int arg0) {Log.i("ViewPager", "=====>arg0="+arg0);}};private void setTabItem(int position){if(position==0){vline.setTag("0");TranslateAnimation ta = new TranslateAnimation(width, 0, 1, 1);ta.setDuration(200);ta.setFillBefore(true);vline.clearAnimation();vline.startAnimation(ta);}else {vline.setTag("1");TranslateAnimation ta = new TranslateAnimation(0, width, 1, 1);ta.setDuration(200);ta.setFillBefore(true);ta.setFillAfter(true);vline.clearAnimation();vline.startAnimation(ta);}}private class ViewPagerAdapter extends PagerAdapter{@Overridepublic int getCount() {return drawableResIds.length;}@Overridepublic Object instantiateItem(ViewGroup container, int position){ImageView imageView = (ImageView) layoutInflater.inflate(R.layout.image_display, null);imageView.setImageResource(drawableResIds[position]);imageView.setTag(position);container.addView(imageView);LayoutParams lp = imageView.getLayoutParams();lp.width = LayoutParams.MATCH_PARENT;lp.height = LayoutParams.MATCH_PARENT;imageView.setLayoutParams(lp);            return imageView;  }@Overridepublic void destroyItem(ViewGroup container, int position, Object object){ImageView image = (ImageView)((ViewPager) container).findViewWithTag(position);            ((ViewPager) container).removeView(image);  }@Overridepublic boolean isViewFromObject(View arg0, Object arg1) {return arg0==arg1;}}public void doSwicth(View v) {switch (v.getId()) {case R.id.fade_anim_left: {mViewPager.setCurrentItem(0,true);}break;case R.id.fade_anim_right:mViewPager.setCurrentItem(1,true);break;default:break;}}}
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical" >        <LinearLayout         android:layout_width="match_parent"        android:layout_height="wrap_content"        android:orientation="horizontal"        >         <Button        android:id="@+id/fade_anim_left"        android:layout_width="match_parent"        android:layout_height="40dip"        android:layout_weight="1"        android:text="Left"         android:onClick="doSwicth"        android:background="@drawable/fade_anim"        />         <View              android:layout_width="1dip"             android:layout_height="30dip"             android:background="@color/red"             />          <Button                     android:id="@+id/fade_anim_right"        android:layout_width="match_parent"        android:layout_height="40dip"        android:text="Right"         android:layout_weight="1"        android:onClick="doSwicth"        android:background="@drawable/fade_anim"        />    </LinearLayout>        <View         android:id="@+id/line"        android:layout_width="160dip"        android:layout_height="5dip"        android:background="@color/red"        />        <android.support.v4.view.ViewPager        android:id="@+id/anim_view_pager"        android:layout_width="match_parent"        android:layout_height="match_parent"        android:scrollbars="vertical"        android:keepScreenOn="true"        >          <!-- <android.support.v4.view.PagerTabStrip                android:id="@+id/anim_view_pager_tabsctrip"                android:layout_width="wrap_content"                android:layout_height="wrap_content"                android:layout_gravity="top"/>    -->    </android.support.v4.view.ViewPager></LinearLayout>


Android ViewPager的簡單使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.