0

我正在使用带有适配器的 asy 任务并收到此错误

 java.lang.NullPointerException

问题线是

 listAdapter = new listAdpterRss(this.context, R.layout.listitems,RssArrays,RssArrays.rtl);

我的 asy 任务看起来像这样

protected void onPostExecute(String result) {
        Dialog.dismiss();
        ListView lv = getListView();
    //  lv.setTextFilterEnabled(true);
        listAdapter = new listAdpterRss(this.context, R.layout.listitems,RssArrays,RssArrays.rtl);
        lv.setAdapter(listAdapter); // on test
        listAdapter.notifyDataSetChanged();
        lv.setOnItemClickListener(new OnItemClickListener() 
        {
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                Intent intent = new Intent(RssItem.this,openRssItem.WebActivity.class);
                intent.putExtra("url", RssArrays.PodcastURL[position].toString());

                startActivity(intent);
                //new splash(ListRss.this,mHandler,listValue.get(position).toString()).execute();
            } 

        });
4

1 回答 1

0

您稍后会设置适配器,并且可能会在您的 doInBackground 方法中使用。这就是它显示 nullPointer 的原因。请把所有这些放在onPreExecute()上:

列表视图 lv = getListView(); // lv.setTextFilterEnabled(true); listAdapter = new listAdpterRss(this.context, R.layout.listitems,RssArrays,RssArrays.rtl); lv.setAdapter(listAdapter);

然后尝试您的代码。

于 2016-05-11T09:05:10.883 回答