2 znl 12 znl_12 于 2013.08.13 10:50 提问

访问Listview出现的问题

程序中的服务器要在一个xml文件中访问一个Listview,我使用 findviewbyid,但是不能运行,因为它不是一个activity。
然后我在main activity 使用之前的listview创建了一个static var,但是错误提示不能创建static的,因为它使用findviewbyid。
我也在main activity 创建了一个函数然后再返回一个listview。代码看起来可行,但是当程序获取那个函数时就崩溃了。因为在 log中出现nullpointer错误。
谁能告诉我在一个服务器中如何访问listview?
在 main activity,onCreate 的代码:

 UpdateDisplay();

    countdown();
    startService(new Intent(this, ss.class));

listview的源码:

private void UpdateDisplay() //was private and void
    {
        TextView feedtitle = (TextView) findViewById(R.id.feedtitle);
        TextView feedpubdate = (TextView) findViewById(R.id.feedpubdate);
        ListView itemlist = (ListView) findViewById(R.id.itemlist);
        if (feed == null)
        {
            feedtitle.setText("No RSS Feed Available");
            return;
        }
        feedtitle.setText(feed.getTitle());
        feedpubdate.setText(feed.getPubDate());
        ArrayAdapter<RSSItem> adapter = new ArrayAdapter<RSSItem>(this ,android.R.layout.simple_list_item_1,feed.getAllItems());
        itemlist.setAdapter(adapter);
        itemlist.setOnItemClickListener(this);
        itemlist.setSelection(0);
    }

1个回答

shaojie519
shaojie519   2013.08.13 11:59
已采纳

这个得异步操作,从服务器获取数据完成后在构造adapter,然后在activity里的listview中显示,你需要把listview的引用传递进来就不会空指针了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!