今天遭遇這個問題
弄了大半天都弄不好
不知道到底是哪裡出差錯
先上圖 https://i.imgur.com/m3kn4Ue.png
這是我的Item,裡面有另外嵌了一個RecyclerView
現在我想讓整個Item可以點擊,這個部分沒問題
程式碼寫好之後確實可以點擊,有反應
但是點到黃色區塊時卻沒反應...
google了大半天,嘗試了各種查到的方法,就是不能將內部Item蓋過
方法包含在父布局加上
android:descendantFocusability="blocksDescendants"
在子RecyclerView加上
Rv.setClickable(false);
Rv.setPressed(false);
Rv.setEnabled(false);
Rv.setFocusable(false);
請問有大大有相關經驗可以提點一下嗎?
作者:
zop (ㄞ肝ㄞ肝~一元二十罐~)
2017-11-24 23:15:00你的意思是,要讓父RV可以點?但是發生有子RV的部份不能點?
作者:
zop (ㄞ肝ㄞ肝~一元二十罐~)
2017-11-24 23:17:00有一招可以試試看,父RV的item裡面,最外層用RelativeLayout然後首先放上子RV,接著放上一個跟外層一樣大的Linearlayout,這個Linearlayout就會蓋在子RV上,然後在父RV程式碼裡面設定這個Linearlayout可以點擊,試試看。
作者: lnmlee 2017-11-24 23:34:00
不要使用巢狀ListView 這在UX上是扣分的 而且不好處理即使你看到有類似的App有這種操作你也不要模仿
作者:
zop (ㄞ肝ㄞ肝~一元二十罐~)
2017-11-24 23:48:00那反過來,先放linearlayout,然後子RV margin,留邊點擊不然,不要找麻煩了,直接父RV item點了之後換頁顯示子RV攜帶裝置螢幕就那麼大,盡量簡單明瞭比較好
作者: lnmlee 2017-11-24 23:58:00
我做過這總UI 父層ListView item rootView 是scrollview高度寫死 寬 match_parent 內部LinearLayout 高度 match_parent 寬度動態計算內容長度後寫死 即可實現上下可滑 左右也可滑的效果 但我真的不建議這總作法
作者:
zop (ㄞ肝ㄞ肝~一元二十罐~)
2017-11-24 23:59:00那個我也做過,是不得已的時候才要那樣 XD,沒辦法,有時候客戶就是要這樣,怎麼解釋都沒用。
的確這樣寫,可讀性真的變很差QQ,我的子Rv不確定內容又想直接呈現給使用者看,所以才要這樣寫
作者:
zop (ㄞ肝ㄞ肝~一元二十罐~)
2017-11-25 00:12:00查查linearlayout addview,試試看。
作者: lnmlee 2017-11-25 00:15:00
你給個現實存在 你想模仿的UI 給我們看看 也許並不難搞
作者:
ptthao (優文保證)
2017-11-26 09:57:00子Rv的內容可以用父Rv覆寫getItemViewType來做嗎@@?