ListActivity
始终有相应的ListView
元素,对吗?那么,有没有通过索引获取列表项的方法,或者我必须使用ListView
手动获取findViewById
实例并从中获取项目?
修改
我想在代码中更改列表项的文本。
答案 0 :(得分:2)
实现这一目标的方式与您的预期略有不同。您应该从适配器检索数据并更新它,而不是尝试获取视图并更改其文本。之后,您可能需要重置ListActivity使用的适配器。
要获取适配器,您需要先调用ListActivity.getListAdapter
。获得Adapter
后,您可以致电Adapter.getItem
以获取特定位置的数据。
答案 1 :(得分:0)
显然,根据您的适配器,您使用不同的转换等,但作为ListActivity中ListView的示例:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, new String[] { "One", "Two", "Three" });
// One, two, three
setListAdapter(adapter);
// Display "Two" (specified by index with `getItem`).
Toast.makeText(this, "Element two is: " + (String)getListAdapter().getItem(1), Toast.LENGTH_SHORT).show();