作者shawnba (冰祕熊巴)
看板AndroidDev
標題[問題] AlertDialog 裡使用 View 的問題
時間Mon Jun 17 00:26:54 2013
前輩大家好
我建立了一個 layout,裡面只有 EditText 與 Button
打算在一個彈出的 AlertDialog 顯示出來
一開始,EditText 和 Button 都沒有指定做事情時,可以正常顯示
程式碼:
http://ppt.cc/UM7x 顯示畫面:
http://ppt.cc/ldJW
之後,把 EditText 和 Button 的 (任一) 行為加進去後,執行就會出現錯誤
程式碼:
http://ppt.cc/bb1A
請問在 AlertDialog 裡面,一般的元件是否有特殊使用或呼叫方式呢?
謝謝~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.34.231.188
1F:→ fake01:EditText et = (EditText)editTextView.findViewById... 06/17 01:22
2F:→ fake01:應該是要這樣宣告 試試看 06/17 01:23
3F:推 hijamoya:樓上正解 要用Alterdialog的view 去findviewbyid 06/17 06:28
4F:推 givemepass:你可以試著看一下logcat出現甚麼錯誤 06/17 08:55
感謝大家,這樣宣告就沒問題了
另外 logcat 出現是 null pointer ,下回會試著理解錯誤訊息,感謝~~
最後一個新問題.. 我使用前輩講的 正確的View.findViewById 之後
接著把紅色框框那一行打開 edittextIndicate.setText("12");
但是出來的視窗, EditText 裡面還是空的... 這是為什麼呢... 再次請教
[解決]
抱歉,原本的程式碼有個基本的錯誤
http://ppt.cc/bb1A
最上面兩行,是我的認知錯誤,我以為一個元件都要宣告一個 View.inflater
其實是宣告一個 view 就可以了,正確寫法應該只需要一行
View view = View.inflater(this, R.layout.xxxxx, null);
接著下面兩個元件皆使用這個 view.findViewById 即可
這樣就可以正常存取 EditText 的值
※ 編輯: shawnba 來自: 114.34.231.188 (06/17 13:28)