2013年3月17日 星期日

滑動頁面時不自動換標籤頁

最近試著用 ActionBarSherlock 增加標籤頁的功能,

當加入兩個以上的標籤並使用 ViewPager 功能時,常常遇到滑動螢幕時就會自動換至另一個標籤頁的情況

為了避免使用造成不便,找到了一篇非常有用的文章,按我連結

Santiago 運用繼承 ViewPager類別,並改變他在事件觸發時的相關作用。


import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;

public class CustomViewPager extends ViewPager {

private boolean enabled;

public CustomViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
this.enabled = true;
}

@Override
public boolean onTouchEvent(MotionEvent event) {
if (this.enabled) {
return super.onTouchEvent(event);
}

return false;
}

@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
if (this.enabled) {
return super.onInterceptTouchEvent(event);
}

return false;
}

public void setPagingEnabled(boolean enabled) {
this.enabled = enabled;
}
}


現在如果不需要滑動頁面功能,只需要將原本使用 ViewPager 的類別替換成CustomViewPager

並指定setPagingEnabled(false)即可解決滑動頁面的困擾

沒有留言:

張貼留言