Re: [問題] Android listview

看板java作者時間14年前 (2010/02/10 02:03), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串3/4 (看更多)
※ 引述《rex0625 (rex)》之銘言: : 小弟在學習listview的時候遇到一些問題 : 當以下程式碼放在activity的最上面時可以正常顯示出listview : 但是如果不是放在最上面而是先處理socket後才放 就不能顯示 : 因為小弟想要根據socket獲得的資料 來改變list內容 然後顯示 : String test[] ={"ddd","dddd"}; : ArrayAdapter<String> arrayData = new ArrayAdapter<String>( : this : , android.R.layout.simple_list_item_1 : , test : ); : ListView lv = new ListView(this); : lv.setAdapter( arrayData ); : setContentView(lv); : 不知道可能哪邊出了問題呢? : 謝謝回答 我自己理解是...setContentView是一定要放在前面的 因為你進入此activity一定須要先讀入某個layout xml給此activity 而寫listview主要兩種方法 a. 一開始你的class extends ListActivity 當然layout xml也要寫入listview這個widget 然後在setContentView完後 抓完你的socket資料,再使用setAdapter(arrayData) b. 一開始class extends Activity //非ListActivity 接著一樣layout xml裡面定義你會用到的listview widget 一樣一開始setContentView 接著新增listview物件 ListView lv = (ListView) findViewById(R.id.listview_widget_id); 然後抓你的socket資料到arrayData後 再使用你的lv物件 lv.setAdapter(arrayData) 這兩種方法我自己都寫過 都可work 試試看吧~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.133.98 ※ 編輯: tstanly 來自: 140.116.133.98 (02/10 02:04)

02/10 11:08, , 1F
根據我的理解... setContentView 並不需要放最前面
02/10 11:08, 1F

02/10 13:06, , 2F
我再試試看 感謝回答
02/10 13:06, 2F
文章代碼(AID): #1BSQDvwq (java)
文章代碼(AID): #1BSQDvwq (java)