2013-03-01 83 views

回答

1

您可以检测整个手势Activity,您可以在其中执行onTouchEvent()回调并使用GestureDetector

仅检测操作栏的触摸和手势有问题。

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

类似的情况持有ActionBarSherlock(它用于Android 3.2以前的所有版本)。但是这里的情况更为有利,因为它是您添加到项目中的图书馆,您可以以任何您想要的方式随意操纵它,并且可以轻松访问其私密部分。 ActionBarSherlock通过向窗口内容添加一些额外视图来模拟本机操作栏。您可以访问这些视图并将它们附加到OnTouchListener(您可能会使用R.id.abs__action_barR.id.abs__action_bar_container)。

+0

如何访问视图? – 2013-10-13 03:52:18