作者freesamael (燒賣)
看板AndroidDev
標題Re: [問題] 新手發問btn遇到nullPoint
時間Tue Apr 1 03:28:58 2014
※ 引述《relievezaoc (shu)》之銘言:
: XML:http://ppt.cc/hWRf
: main.java:http://ppt.cc/XOJq
: logcat:http://ppt.cc/OKG4
: 新手爬文結果發現 出現這種問題通常都是XML有問題 或是findviewbyid沒抓到..
: 不過我只有一個txtview 跟一個btn也有問題
: 有clean也是一樣~"~
: java裡 我有寫個
: //ii
: public void click (View v){...} 的寫法
: 是google有這種偷吃步的方式 直接在xml的btn 給他onclick
: 我用這種方式好像因為沒有去抓btn的r.id..所以就正常可以用...
: whyyy~~~@_@~~
: 想請問是哪邊該修改呢?
FragmentTransaction.commit() 文件:
Schedules a commit of this transaction.
The commit does not happen immediately;
it will be scheduled as work on the main thread to be done
the next time that thread is ready.
commit() 不會馬上把 PlaceholderFragment 加進去,而會等到下一次
main thread ready,以你的程式碼來說,至少要等到 Activity.onCreate() 結束之後
才有機會執行。所以你在 Activity.onCreate() 裡嘗試存取該 fragment 或 fragment
底下的 view 都會失敗。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.250.21.200
※ 文章網址: http://www.ptt.cc/bbs/AndroidDev/M.1396294140.A.915.html
推 relievezaoc:咦 雖然不是很懂意思 不過改成在activity_main就可 04/01 22:55
→ relievezaoc:以正確執行 所以如果元件放在fragement 就應該在 04/01 22:56
→ relievezaoc:fragement寫才對囉? 04/01 22:56
→ relievezaoc:= =..我就在電腦前 為什麼我不先試一次再問呢= =... 04/01 22:57