0

是否有可能在 ActionbarSherlock 上收听触摸手势?我想识别操作栏上的滑动手势,以便从显示屏顶部“下拉”下拉菜单。

4

1 回答 1

1

您可以检测整体的手势Activity,您可以在其中实现onTouchEvent()回调和使用GestureDetector

只为操作栏检测触摸和手势是有问题的。

AFAIK,操作栏不会公开其视图。所以没有用于附加OnTouchListener到本机操作栏的 api。除非您对 ActionBar 的私有部分进行一些黑客攻击,否则它不会在那里工作。或者您可以使用操作栏中的 来创建自定义视图OnTouchListener,然后您可以检测自定义视图区域中的触摸。您可以将自定义视图设置为占据操作栏的整个区域。

类似的情况也成立ActionBarSherlock(它用于所有版本直到 Android 3.2)。但这里的情况更有利,因为它是您添加到项目中的库,您可以随意随意操作它,并且可以轻松访问它的私有部分。ActionBarSherlock通过向窗口内容添加一些额外的视图来模仿本机操作栏。您可以访问这些视图并附OnTouchListener加到它们(您可能会使用R.id.abs__action_baror R.id.abs__action_bar_container)。

于 2013-03-02T01:38:16.703 回答