znl_12 2013-08-13 02:50 采纳率: 0%
浏览 2044
已采纳

访问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条回答

  • kity 2013-08-13 03:59
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器