问题描述
- 访问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); }
解决方案
这个得异步操作,从服务器获取数据完成后在构造adapter,然后在activity里的listview中显示,你需要把listview的引用传递进来就不会空指针了
时间: 2024-09-15 05:00:47