2013-03-01 82 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