2012年12月7日金曜日

ViewPagerをScrollViewに入れる

Scrollが縦の中に横Scrollが入るからややこしい。
ScrollViewがonInterceptTouchEventで子Viewのイベントを監視、
縦Scrollした瞬間ViewPagerのイベント横取りするからそれを阻止する。


private class MyViewPager extends ViewPager {

public MyViewPager (Context context) {
super(context);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent motionEvent) {
if (motionEvent.getAction() == MotionEvent.ACTION_UP){
scrollView.requestDisallowInterceptTouchEvent(false);
}
return super.onInterceptTouchEvent(motionEvent);
}
@Override
protected void onPageScrolled(int arg0, float arg1, int arg2) {
scrollView.requestDisallowInterceptTouchEvent(true);
super.onPageScrolled(arg0, arg1, arg2);
}
}
}







0 件のコメント:

コメントを投稿