作者sweet00914 (別理我)
看板AndroidDev
標題[問題] ExpandableListView 更新問題
時間Fri Mar 2 16:12:19 2012
我的目的:
在開啟程式前需要載入大量資料,所以我使用ProgressDialog來提示使用者等待。
但是就在載入資料完畢(這部分沒有問題)後,
elv.setAdapter(viewAdapter);//會出現java.lang.NullPointerException的錯誤訊息
以下為我的程式碼,
________________________________________________________________________
@Override
public void onCreate(Bundle savedInstanceState) {
elv = (ExpandableListView) findViewById(R.id.expandableListView);
pd = ProgressDialog.show(this, "程式啟動中", "請稍待..", true, false);
new Thread() {
@Override
public void run() {
init();//載入資料
handler.sendEmptyMessage(0);
}
}.start();
}
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
Log.i("0.0", "要關閉對話框了");
pd.dismiss();
try {
viewAdapter = new ExpandableAdapter(this,
groups, childs);
elv.setAdapter(viewAdapter);//此行產生錯誤
} catch (Exception e) {
Log.i("0.0", "錯誤的原因:" + e.toString());
}
}
};
請各位大大提供點意見,謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.55.241
※ 編輯: sweet00914 來自: 220.130.55.241 (03/02 16:13)
→ tericky:因為不知道 groups 跟 childs 的內容有沒有初始化成功 03/02 22:26
→ tericky:所以很難判定是不是初始化問題 03/02 22:28
→ tericky:試改看看 new ExpandableAdapter(this <- UrActivity.this 03/02 22:30
→ tericky:還是不行的話...貼完整一點的程式碼上來吧 03/02 22:30
→ tericky:但是原因比較有可能出在 groups 或是 childs 是 null 03/02 22:33
→ sweet00914:我嘗試將.this改為activity.this,問題解決了。0.0 03/03 09:11
→ sweet00914:感謝T大的建議~0.0 03/03 09:21