作者rose1598 (冰炎)
看板AndroidDev
標題[問題] 請問如何賦予不定數edittext的id
時間Fri Apr 12 00:16:10 2019
各位大佬好
小的最近在寫一隻程式
是這樣的
假設我今天放一個spinner
spinner裡面有1~10個數字
使用者可以選擇其中一個
然後系統自動生成幾個edittext
我目前到這邊生成物件沒有問題
有問題在後面
我要如何設定那幾個物件的id好去拉值
比如說
使用者在spinner選了5
系統要自動生成5個edittext
然後我要setid給那五個edittext
並讓那五個edittext分別放入
Linearlayout
到目前為止沒有問題
之後我可以用迴圈將每個設置好的edittext用
比如說
string a= "";
for(int i=0 ; i<n; i++){
Edittext edittext = (Edittext)view.findviewbyid(i);
a+=edittext.getstring.tostring;}
撈那n個的值
請問各位大佬有什麼方式可以讓小的構思一下
如何動態設置不定數Edittext
以及動態設置那n個setId
以及利用生成的id去做控制
手機排版請見諒
-----
Sent from JPTT on my OPPO CPH1715.
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.217.72.43
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1554999372.A.21D.html
1F:→ ssccg: new EditText(),不用設id,new的時候把reference存下來啊 04/12 00:19
請問具體怎麼做 小弟才疏學淺
※ 編輯: rose1598 (180.217.72.43), 04/12/2019 00:20:47
2F:→ erty0402: settag也是一個做法 04/12 00:22
3F:→ ssccg: 當然你想設還是可以設id啦 04/12 00:22
目前是說 我設了 但系統表示找不到QQ
java.lang.NullPointerExcept 'android.text.Editable android.widget.EditText.getText()' on a null object reference at ...
4F:→ ssccg: 不然你的生成物件沒有問題,是用什麼生法? 04/12 00:27
小的先睡了 明天還要上班 我明天下班在一一回覆 謝謝各位大佬
For迴圈
Edittext edittext = new Edittext(this);
linerlayout.addview(edittext)
※ 編輯: rose1598 (180.217.72.43), 04/12/2019 00:28:46
※ 編輯: rose1598 (180.217.72.43), 04/12/2019 00:30:26
※ 編輯: rose1598 (180.217.72.43), 04/12/2019 00:33:14
5F:→ gcobc12632: 用 setTag 試試看 04/12 02:52
6F:推 taco2548: List<EditText>,,, new之後add 04/12 07:52
7F:推 jknm0510a: 用list裝也可以,不然就從linearlayout.getChild 04/12 10:24
8F:推 t52101t: ViewGroup有childCount跟getChildAt能用呀 04/12 11:43
9F:→ erty0402: 採用viewholder類似的做法會比較好,performance比較好 04/12 13:12
10F:→ JackChena: 放到List裡面就好了 04/12 18:18
11F:推 taco2548: 既然已經知道用addView了,就不一定要再用findViewById 04/12 20:58
感謝各位大老相助
由於小弟才疏學淺
我就使用了List<NewList>的方式下去拉
找時間我會去研究下底層的運作
不然我怎麼死的都不知道XD
※ 編輯: rose1598 (61.71.3.146), 04/12/2019 21:28:39