作者taco2548 (T@cO)
看板AndroidDev
标题[问题] 求救DialogFragment
时间Sat Dec 23 07:53:25 2017
今天试图用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://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1513986811.A.CE3.html
1F:推 voickylin: 应该是顺序问题,再看看其他范例的说明吧 12/23 09:16
2F:→ lnmlee: 加个转型看看 12/23 09:46
3F:→ taco2548: 转哪 12/23 09:56
4F:→ cha122977: 有enter_dialog.xml原始码吗? 12/23 12:42
5F:→ lnmlee: findView 完转型 TextView 12/23 13:04
6F:→ erty0402: 转型是下一个问题 12/23 13:26
7F:→ roy870075: 你要在onCreateView做不是onCreateDialog… 12/23 17:22
8F:→ taco2548: onCreateView也做过了,一样结果 12/23 17:48
9F:→ taco2548: 事实上若是写在show之前,是可以运作的,像这样 12/23 17:49
11F:→ taco2548: 但如果在show之後,infoText就不见了 12/23 17:52
12F:→ taco2548: 因为我还要用EditText跟Button,要取得用户的动作跟输入 12/23 17:55
※ 编辑: taco2548 (223.138.138.92), 12/23/2017 17:57:47
13F:→ taco2548: 但我在show之後,所有东西都是空的,view也是 12/23 18:03
14F:→ roy870075: 那试试写在onViewCreated呢? 12/23 19:01
15F:→ salavida: show只是开启一个transcation说要加入一个fragment 12/24 00:12
16F:→ salavida: 所以fragment并没有立刻生成好 12/24 00:13
17F:→ salavida: 把setInfoText换成印log然後onCreateDialog第一行印log 12/24 00:16
18F:→ salavida: 看一下log顺序 12/24 00:16
19F:→ taco2548: log顺序确实是像大大说的一样,show排超後面 12/25 11:39
20F:→ taco2548: 请问该怎麽解决这个问题? 12/25 11:40
21F:→ taco2548: 找到答案了 executePendingTransactions() ,,非常感谢 ! 12/25 11:44
22F:→ qweqweqweqwe: 比较建议用setArguments... 12/30 04:32
23F:→ qweqweqweqwe: 另外在 onCreateDialog 内就可以了 12/30 04:33