Re: [閒聊] 用R.id連加方法取得n個UI widget

看板AndroidDev作者 (小恐龍)時間12年前 (2012/06/08 15:43), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
感覺用加的方式會比較不穩, 像假如說已經有button0~button9, 那另外有button01的話就可能會有問題 所以在已經知道view的id的情況下可以用 String viewid = "button"+i int resID = Activity.this.getResources().getIdentifier(viewid, "id", getPackageName()); for(){ button[i] = (Button) Activity.this.findViewById(resID); } 來取得大量命名有規律的view ※ 引述《codemonkey (程式猿)》之銘言: : 剛剛做了一個實驗,假如說一個layout上面有100個button : (先不管造成這種局面的原因), : 在Java@Android的程式架構下, : 原來也可以用Button物件陣列和resource ID連加來處理: : //i=0~99 : buttons[i] = (Button)findViewById(R.id.firstButton + i); : 不過這樣的作法好像非正規也不聰明,例如layout版面改變一下, : 就得一段段下去改程式了,特別是在有複雜UI的環境下... : 所以,還是用執行階段加入widget、或是利用Inflater物件才是正解? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.91.176 ※ 編輯: cooper6334 來自: 140.112.91.176 (06/08 15:50)
文章代碼(AID): #1FqQqLwD (AndroidDev)
文章代碼(AID): #1FqQqLwD (AndroidDev)