【发布时间】:2015-01-26 16:51:00
【问题描述】:
我正在开发一个应用程序,它在 ScrollView 中有一个垂直的 ViewPager。问题是 ViewPager 仅在我水平滚动时识别触摸事件,否则 ScrollView 将获得焦点并执行滚动。 我认为这可行:
viewPager.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
scrollView.requestDisallowInterceptTouchEvent(true);
int action = event.getActionMasked();
switch(action){
case MotionEvent.ACTION_UP:
scrollView.requestDisallowInterceptTouchEvent(false);
break;
}
return false;
}
});
但是由于 ViewPager 在我执行垂直滚动时无法识别触摸事件,所以这段代码什么也不做。 我想要实现的是当我触摸 ViewPager 时将焦点放在 ViewPager 上,当我不触摸 ViewPager 时将焦点放在 ScrollView 上。提前致谢。
【问题讨论】:
标签: android performance android-viewpager scrollview