自定义Myviewpager
package com.example.myviewpager; import android.content.Context; import android.support.v4.view.ViewPager; import android.util.AttributeSet; import android.view.MotionEvent; /** * 自定义滑动翻页可控,可通过设置isCanScroll参数来控制是否允许滑动切换页面 */ public class MyViewPager extends ViewPager { /** 是否允许滑动翻页 ,默认可滑动*/ private boolean isCanScroll = true; public MyViewPager(Context context, AttributeSet attrs) { super(context, attrs); } public Myviewpager(Context context) { super(context); } public boolean isCanScroll() { return isCanScroll; } /** 设置是否可以滑动翻页 */ public void setCanScroll(boolean isCanScroll) { this.isCanScroll = isCanScroll; } @Override public void scrollTo(int x, int y) { super.scrollTo(x, y); } // 设置禁止滑动的关键 @Override public boolean onTouchEvent(MotionEvent arg0) { if (!isCanScroll) return true; return super.onTouchEvent(arg0); } @Override public boolean onInterceptTouchEvent(MotionEvent arg0) { return super.onInterceptTouchEvent(arg0); } @Override public void setCurrentItem(int item, boolean smoothScroll) { super.setCurrentItem(item, smoothScroll); } @Override public void setCurrentItem(int item) { super.setCurrentItem(item); } }适配器:
package com.example.myviewpager; import java.util.List; import android.support.v4.view.PagerAdapter; import android.view.View; import android.view.ViewGroup; /** * viewpager适配器 * */ public class MyViewPagerAdapter extends PagerAdapter{ private List<View> mListViews; public MyviewpagerAdapter(List<View> mListViews) { this.mListViews = mListViews;//构造方法,参数是我们的页卡,这样比较方便 } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(mListViews.get(position));//删除页卡 } @Override public Object instantiateItem(ViewGroup container, int position) { //这个方法用来实例化页卡 container.addView(mListViews.get(position), 0);//添加页卡 return mListViews.get(position); } @Override public int getCount() { return mListViews.size();//返回页卡的数目 } @Override public boolean isViewFromObject(View arg0, Object arg1) { return arg0==arg1;//官方提示这样写 } }第一个view
package com.example.myviewpager; import android.content.Context; import android.view.LayoutInflater; import android.view.View; /** * 第一个 * @author cgx * */ public class View1 { private Context mContext; private View rootView; public View1(Context mContext) { // TODO Auto-generated constructor stub this.mContext=mContext; //加载布局 rootView = LayoutInflater.from(mContext).inflate( R.layout.view1_layout, null); } public View getView(){ return rootView; } }activity布局文件
以上就是关于viewpager的全部内容,相信你一定会非常满意。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-12000-2.html
美国对伊拉克有领导权
岀名后说话更应慎重才是