我有一个用于实现滑动选项卡的ViewPager布局。Everiting工作正常,但是我会在组成ViewPager的每个片段中处理一个触摸事件。我尝试在我的主要活动中执行此操作:
@Override
public boolean onTouchEvent(MotionEvent event) {
int action=event.getAction();
if((action == MotionEvent.ACTION_DOWN) && (action == MotionEvent.ACTION_UP)) {
getActionBar().show();
return true;
}
return false;
}
但这似乎不起作用。我该怎么做?
你至少有一个问题。您的 if 语句正在检查操作是否等于向上和向下。这永远不会计算为 true,因为该值不可能同时向上和向下。
尝试如下:
if((action == MotionEvent.ACTION_DOWN)) {
getActionBar().show();
return true;
}
找到 ViewPager 正在分页的片段类型的类。
在该类中,找到视图 --比如说您正在分页的图像的图像视图--
在该视图上,添加侦听器,包括在本地事件处理程序中向 Activity 的回调接口,片段附加到该接口。
在"touch"事件的本地处理程序中,回调接口。
在 onAttach 上的片段中,验证要附加到的活动是否实现了处理程序。
此处介绍的活动到片段接口
然后,您的主活动可以在回调的远程部分中实现您真正想要的触摸事件。