2013-11-27 82 views
2

如何在嵌套視圖中處理onclicklistner層次結構。例如:嵌套視圖中的android onclicklistener層次結構

TableRow tr = something 

tr.setOnClickListener()... 

TableLayout tbl 

tbl.addView(tr) 

ScrollView sv 

sv.addView(tbl) 

sv.setOnClickListener()... 

因此,有在這個例子中聽衆的兩個層次:一個在每一行,以及一個關於「最高」的容器,SV。行的onclick事件可以工作,但sv上的那個事件似乎什麼都不做。那麼,sv上的監聽器會發生什麼,以及如何管理這兩個層事件?是否嵌套onclicks「阻止」對方?

回答

0

你需要在你的TableRow上設置onTouchListener,檢查onTouch方法傳遞的視圖是否是你想要的視圖。如果是這樣,流程到您的onClick方法

0

使用

android:descendantFocusability="blocksDescendants 

根 「SV」 佈局。這將使父母點擊成爲可能,並且可以單獨處理行點擊/ onTouch以分開爲表格行添加點擊偵聽器。

希望它有幫助;)如果所以然後請認真標記它爲真或投票。

乾杯