[問題] 請問如何隱藏RecyclerView前三的按鈕

看板AndroidDev作者 (好耶,好運還沒走!)時間6年前 (2018/05/09 09:50), 編輯推噓4(409)
留言13則, 7人參與, 6年前最新討論串1/1
前輩好,小弟遇到一個問題。 畫面大概是這樣 AAAAA 修改 BBBBB 修改 CCCCC 修改 DDDDD 刪除 修改 EEEEE 刪除 修改 想把RecyclerView前三個選項的特定按鈕除藏 在adapter裡這樣寫 @Override public void onBindViewHolder(ViewHolder holder, int position) { if (position <3) { holder.btnRemove.setVisibility(View.GONE); } } 但發現超過一頁後會有問題 捲動時,position會重算,變成第二頁的前三也會隱藏了 請問有人可以提示我正確的做法嗎? 謝謝~~~ <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.225.229 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1525830652.A.7C8.html

05/09 10:15, 6年前 , 1F
應該不是position的問題, viewholder是會重複使用
05/09 10:15, 1F

05/09 10:17, 6年前 , 2F
使用前請先搖一搖..痾 請先reset(或覆蓋)view的狀態跟資訊
05/09 10:17, 2F

05/09 11:01, 6年前 , 3F
使用前用預設值覆蓋
05/09 11:01, 3F

05/09 11:24, 6年前 , 4F
不好意思,補充一下是新增項目超過第二頁後,再捲動才會
05/09 11:24, 4F

05/09 11:27, 6年前 , 5F
請問可以再多給我幾個關鍵字去google嗎?3q
05/09 11:27, 5F

05/09 11:32, 6年前 , 6F
寫個else setVisibility(View.VISIBLE) 試試?
05/09 11:32, 6F

05/09 12:17, 6年前 , 7F
應該是直接從你資料源移除才對吧!
05/09 12:17, 7F

05/09 12:18, 6年前 , 8F
還有就是樓上說的方式不過要把layout長寬設為1
05/09 12:18, 8F

05/09 12:19, 6年前 , 9F
google csdn listview 隱藏某項item
05/09 12:19, 9F

05/09 13:02, 6年前 , 10F
寫else or 開頭先統一設為VISIBLE
05/09 13:02, 10F

05/09 14:28, 6年前 , 11F
先在最前面設定預設值 或是用if else 不能只用if
05/09 14:28, 11F

05/09 14:29, 6年前 , 12F
if 是GONE 那else 就要設定VISIBLE
05/09 14:29, 12F

05/09 16:56, 6年前 , 13F
感謝大家,已解決開頭要先統一設為VISIBLE因為它會複用
05/09 16:56, 13F
文章代碼(AID): #1QybFyV8 (AndroidDev)