Android模拟器上的ListView中未显示数据

时间:2012-02-22 18:33:11

标签: java android android-layout

我设法让后端为Android应用程序工作,它解析RSS Feed。但是我真的很难将它显示在GUI上。我已经阅读了很多教程,要么我正在做其他人没事的事情,或者更有可能的是,我正在做一些愚蠢的事情,就像不在某个地方打电话一样。

问题是,在对已经响应的人提供一些帮助后,我的代码中出现空指针异常。我在下面发布了一些错误,供您查看。代码没有从我把它转到键盘上的地方发生了很大的变化。

我正在使用SAX解析XML,如果这会造成一点点差异。

我已将这些相关文件以纯文本形式丢弃,并且抱歉他们是一大堆......

Code Dump of Stuff

我无法弄清楚我哪里出错了。非常感谢您的再次光临。

来自catlog的错误如下:

CatLogErrors

2 个答案:

答案 0 :(得分:3)

    public class WelshboyActivity extends   Activity 
    setContentView(R.layout.main);
    in UpdateGui() ,

        if(feeds.size()!=0){

        ListView itemlist = (ListView) findViewById(R.id.list);   
        ArrayAdapter<BlogPost> adapter = new ArrayAdapter<BlogPost>(this, android.R.layout.simple_list_item_1, feeds);
        itemlist.setAdapter(adapter);

    }else{
         Log.d("TAG","feeds is empty ");
}

答案 1 :(得分:1)

如果您延长ListActivity并希望使用main.xml,则忘记致电:

setContentView(R.layout.main);

在您的onCreate()方法中(feeds = getFeed(feedSource);之前)。另外,如果您计划扩展ListActivity,那么必须具有ListView元素且ID为

android:id="@android:id/list"

然后在您的updateGui方法中,您不必查找列表,因为ListActivity会自动找到它,只要您拥有上述ID

private void UpdateGui() {
        ArrayAdapter<BlogPost> adapter = new ArrayAdapter<BlogPost>(this, android.R.layout.simple_list_item_1, feeds);
        setListAdapter(adapter);
    }