2011-06-30 84 views
0

我需要在雙擊以及長時間敲擊時創建上下文菜單。如何做到這一點?如何通過雙擊創建上下文菜單?

我的意思是當用戶長按窗口小部件時,通常調用onCreateContextMenu。在我的情況下,當用戶雙擊widget時,我需要做同樣的事情。

ADDED

我知道這不是真的不錯的選擇,因爲它是不正常的Android UI。但我的主要問題是解決一些供應商的設備的UI錯誤 - 即HTC(look this post)。我似乎解決了所描述的問題,但仍然遇到了上下文菜單的問題。所以作爲最後的手段,我只是想避免點擊雙擊。感謝Thanx ...

+2

「我需要創建上下文菜單雙擊以及長攻。」 - 爲什麼?這不是Android上的標準UX。 – CommonsWare

+0

@CommonsWare - 看上面,我添加了一些評論 – barmaley

回答

1

從我收集的信息來看,您有與EditText綁定的上下文相關操作,而HTC對Android的更改正在干擾此操作。

首先,我會重新考慮通常使用上下文菜單,因爲它們不是特別容易發現的,所以大多數用戶永遠不會發現它們。

其次,在EditText的情況下,發現雙擊會彈出上下文菜單的用戶機率將與今天地球將具有滅絕級小行星罷工的機率相提並論。

::在天空::查找

而不是雙擊,一個選擇是把一個小鄰近EditText,具有面向下的箭頭(類似於一個SpinnerImageButton,並且將ImageButtonPopupMenu(理想,但僅API級別11),PopupWindowAlertDialog聯繫起來。或者,在點擊時,ImageButton通過showContextMenu()單擊時顯示上下文菜單。這也是非標準的用戶體驗,但它至少更容易被發現,因爲用戶將習慣於從Android和其他操作系統按下向下箭頭按鈕時彈出的東西。

如果您絕對相信您需要雙擊,AFAIK不是觸摸事件,那麼您將需要自己處理低級別觸摸事件,確定何時發生雙擊,並確定所以不會干擾EditText的使用(例如,設置光標位置)。

相關問題