[問題] 求救DialogFragment

看板AndroidDev作者 (T@cO)時間7年前 (2017/12/23 07:53), 7年前編輯推噓1(1022)
留言23則, 8人參與, 7年前最新討論串1/1
今天試圖用DialogFragment做一個讓用戶輸入的對話框 但一直碰壁,比直接用AlertDialog做還要麻煩... 先附上code DialogFragment https://i.imgur.com/LmOAgWr.png
Activity https://i.imgur.com/gpnzcoj.png
Logcat https://i.imgur.com/LSJ0wNB.png
錯誤總是setInfoText, 簡單的說, 我的infoText永遠是空的 findViewById沒有任何作用, 請瞭解的先進提示一下, 謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.138.138.92 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1513986811.A.CE3.html

12/23 09:16, 7年前 , 1F
應該是順序問題,再看看其他範例的說明吧
12/23 09:16, 1F

12/23 09:46, 7年前 , 2F
加個轉型看看
12/23 09:46, 2F

12/23 09:56, 7年前 , 3F
轉哪
12/23 09:56, 3F

12/23 12:42, 7年前 , 4F
有enter_dialog.xml原始碼嗎?
12/23 12:42, 4F

12/23 13:04, 7年前 , 5F
findView 完轉型 TextView
12/23 13:04, 5F

12/23 13:26, 7年前 , 6F
轉型是下一個問題
12/23 13:26, 6F

12/23 17:22, 7年前 , 7F
你要在onCreateView做不是onCreateDialog…
12/23 17:22, 7F

12/23 17:48, 7年前 , 8F
onCreateView也做過了,一樣結果
12/23 17:48, 8F

12/23 17:49, 7年前 , 9F
事實上若是寫在show之前,是可以運作的,像這樣
12/23 17:49, 9F

12/23 17:49, 7年前 , 10F

12/23 17:52, 7年前 , 11F
但如果在show之後,infoText就不見了
12/23 17:52, 11F

12/23 17:55, 7年前 , 12F
因為我還要用EditText跟Button,要取得用戶的動作跟輸入
12/23 17:55, 12F
※ 編輯: taco2548 (223.138.138.92), 12/23/2017 17:57:47

12/23 18:03, 7年前 , 13F
但我在show之後,所有東西都是空的,view也是
12/23 18:03, 13F

12/23 19:01, 7年前 , 14F
那試試寫在onViewCreated呢?
12/23 19:01, 14F

12/24 00:12, 7年前 , 15F
show只是開啟一個transcation說要加入一個fragment
12/24 00:12, 15F

12/24 00:13, 7年前 , 16F
所以fragment並沒有立刻生成好
12/24 00:13, 16F

12/24 00:16, 7年前 , 17F
把setInfoText換成印log然後onCreateDialog第一行印log
12/24 00:16, 17F

12/24 00:16, 7年前 , 18F
看一下log順序
12/24 00:16, 18F

12/25 11:39, 7年前 , 19F
log順序確實是像大大說的一樣,show排超後面
12/25 11:39, 19F

12/25 11:40, 7年前 , 20F
請問該怎麼解決這個問題?
12/25 11:40, 20F

12/25 11:44, 7年前 , 21F
找到答案了 executePendingTransactions() ,,非常感謝 !
12/25 11:44, 21F

12/30 04:32, 7年前 , 22F
比較建議用setArguments...
12/30 04:32, 22F

12/30 04:33, 7年前 , 23F
另外在 onCreateDialog 內就可以了
12/30 04:33, 23F
文章代碼(AID): #1QFPhxpZ (AndroidDev)
文章代碼(AID): #1QFPhxpZ (AndroidDev)