[問題] RecyclerView內嵌RecyclerView不能點擊

看板AndroidDev作者 (T@cO)時間7年前 (2017/11/24 22:43), 編輯推噓3(3021)
留言24則, 4人參與, 7年前最新討論串1/1
今天遭遇這個問題 弄了大半天都弄不好 不知道到底是哪裡出差錯 先上圖 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); 請問有大大有相關經驗可以提點一下嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.77.146.170 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1511534603.A.8F8.html

11/24 23:15, 7年前 , 1F
你的意思是,要讓父RV可以點?但是發生有子RV的部份不能點?
11/24 23:15, 1F

11/24 23:15, 7年前 , 2F
11/24 23:15, 2F

11/24 23:17, 7年前 , 3F
有一招可以試試看,父RV的item裡面,最外層用RelativeLayout
11/24 23:17, 3F

11/24 23:18, 7年前 , 4F
然後首先放上子RV,接著放上一個跟外層一樣大的Linearlayout
11/24 23:18, 4F

11/24 23:19, 7年前 , 5F
,這個Linearlayout就會蓋在子RV上,然後在父RV程式碼裡面設
11/24 23:19, 5F

11/24 23:19, 7年前 , 6F
定這個Linearlayout可以點擊,試試看。
11/24 23:19, 6F

11/24 23:33, 7年前 , 7F
行不通QQ
11/24 23:33, 7F

11/24 23:34, 7年前 , 8F
不要使用巢狀ListView 這在UX上是扣分的 而且不好處理
11/24 23:34, 8F

11/24 23:38, 7年前 , 9F
即使你看到有類似的App有這種操作你也不要模仿
11/24 23:38, 9F

11/24 23:42, 7年前 , 10F
不然要用什麼方法替代?
11/24 23:42, 10F

11/24 23:48, 7年前 , 11F
那反過來,先放linearlayout,然後子RV margin,留邊點擊
11/24 23:48, 11F

11/24 23:49, 7年前 , 12F
不然,不要找麻煩了,直接父RV item點了之後換頁顯示子RV
11/24 23:49, 12F

11/24 23:49, 7年前 , 13F
攜帶裝置螢幕就那麼大,盡量簡單明瞭比較好
11/24 23:49, 13F

11/24 23:58, 7年前 , 14F
我做過這總UI 父層ListView item rootView 是scrollview
11/24 23:58, 14F

11/24 23:58, 7年前 , 15F
高度寫死 寬 match_parent 內部LinearLayout 高度 match_p
11/24 23:58, 15F

11/24 23:58, 7年前 , 16F
arent 寬度動態計算內容長度後寫死 即可實現上下可滑 左右
11/24 23:58, 16F

11/24 23:58, 7年前 , 17F
也可滑的效果 但我真的不建議這總作法
11/24 23:58, 17F

11/24 23:59, 7年前 , 18F
那個我也做過,是不得已的時候才要那樣 XD,沒辦法,有時候
11/24 23:59, 18F

11/25 00:00, 7年前 , 19F
客戶就是要這樣,怎麼解釋都沒用。
11/25 00:00, 19F

11/25 00:05, 7年前 , 20F
的確這樣寫,可讀性真的變很差QQ,我的子Rv不確定內容
11/25 00:05, 20F

11/25 00:08, 7年前 , 21F
又想直接呈現給使用者看,所以才要這樣寫
11/25 00:08, 21F

11/25 00:12, 7年前 , 22F
查查linearlayout addview,試試看。
11/25 00:12, 22F

11/25 00:15, 7年前 , 23F
你給個現實存在 你想模仿的UI 給我們看看 也許並不難搞
11/25 00:15, 23F

11/26 09:57, 7年前 , 24F
子Rv的內容可以用父Rv覆寫getItemViewType來做嗎@@?
11/26 09:57, 24F
文章代碼(AID): #1Q630BZu (AndroidDev)
文章代碼(AID): #1Q630BZu (AndroidDev)