2012-10-15 50 views
1

我有一個視圖定義了它(按鈕,ImageView等)上的3-4項目。視圖已經定義的onLongClickListener:Android onLongClickListener查看冒泡兒童事件

view.setOnLongClickListener(new OnLongClickListener() { ... } 

只要我長點擊我的觀點的空白部分,這個偉大的工程 - 但如果我長點擊我的形象,例如,長按沒有按」不會觸發。

Android中是否有無需爲每個元素定義onLongClick偵聽器而讓子元素「傳遞」其事件的功能?

+0

讓你的孩子視圖'機器人的OnLongClickListener的單個實例:可調焦=「假」'。 – user370305

+0

這會使按鈕停止響應定期點擊嗎? – bugfixr

+0

是的。它會停止響應該子視圖的常規點擊。 – user370305

回答

1

我不認爲你可以做到這一點,而不必在自定義類中重寫它或創建一個偵聽器來傳遞它。你可以定義你傳遞給所有的人,做類似

((View.OnLongClickListener)view.getParent()).onLongClick(view) 

((View.OnLongClickListener)view.getParent()).onLongClick(root.getParent())