最開始做的整個頁面都可以滑動類似微信,但后來首頁改版,frament內的滑動效果太多,就要去掉整個activity的滑動效果,但是想改起來快一點,就想到把viewpager滑動效果禁止掉,只能點擊選擇,上網一搜還真有並且很好用就推薦下。但是點擊選擇后還有滑動的效果,后來就想把viewpager的滑動動畫去掉,搜了搜沒找到,后來發現把滑動的切換時間可以改成不需要切換時間,這樣就ok了,下面是源碼。 import android.content.Context; import android.support.v4.view.ViewPager; import android.util.AttributeSet; import android.view.MotionEvent; public class NoScrollViewPager extends ViewPager { private boolean noScroll = true; //true 代表不能滑動 //false 代表能滑動 public NoScrollViewPager(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub } public NoScrollViewPager(Context context) { super(context); } public void setNoScroll(boolean noScroll) { this.noScroll = noScroll; } @Override public void scrollTo(int x, int y) { super.scrollTo(x, y); } @Override public boolean onTouchEvent(MotionEvent arg0) { /* return false;//super.onTouchEvent(arg0); */ if (noScroll) return false; else return super.onTouchEvent(arg0); } @Override public boolean onInterceptTouchEvent(MotionEvent arg0) { if (noScroll) return false; else 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, false);//表示切換的時候,不需要切換時間。 } }
