【发布时间】:2014-01-07 22:19:51
【问题描述】:
所以在从我的对象列表中填充 ListView 项目时,我遇到了一个巨大的问题。
private void setListItems() {
DatabaseHandler db = new DatabaseHandler(this);
List<ToDoTask> taskList = db.getAllTasks();
for (ToDoTask tt : taskList) {
this.listAdapter.add(tt.getName());
}
this.listAdapter.notifyDataSetChanged();
}
这部分代码填充了我的 ListView。现在我想在项目中添加删除线,如果
tt.getActive() == 0
我不知道如何从我的 ListView 中获取 TextView 项。我尝试在我的 for 循环中:
TextView textView = (TextView) this.listView.getChildAt(this.listView.getCount() -1);
但应用程序崩溃了。 唯一没有让我的应用崩溃的解决方案是:
TextView textView = this.listAdapter.getView(this.listView.getCount() -1, null, null)
但它实际上并没有改变 ListView 中的任何内容。我认为它没有引用对象本身。 这是一些实例化我的变量的代码:
this.listView = (ListView) findViewById(R.id.listViewItem);
this.listItems = new ArrayList<String>();
this.listAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, this.listItems);
this.listView.setAdapter(this.listAdapter);
【问题讨论】:
标签: android listview loops textview strikethrough