Java 如何在android中向listview动态添加项目
有人能帮我吗?我试图在Android中创建一个ListView,并试图使用代码(而不是XML)将项目加载到它中 这是我目前掌握的代码Java 如何在android中向listview动态添加项目,java,android,Java,Android,有人能帮我吗?我试图在Android中创建一个ListView,并试图使用代码(而不是XML)将项目加载到它中 这是我目前掌握的代码 tweetList = (ListView)this.findViewById(R.id.tweetListView); TextView tv; for(int i=0;i<20;i++) { tv = new TextView(this); tv.setTex
tweetList = (ListView)this.findViewById(R.id.tweetListView);
TextView tv;
for(int i=0;i<20;i++)
{
tv = new TextView(this);
tv.setText("I'm a textView");
tweetList.addHeaderView(tv);
}
tweetList.invalidate();
为什么我现在不能动态添加它们?标题视图只是一个标题,而不是列表中的项目。listview通过适配器接收其内容。
列表视图
并没有为其子视图保留视图
,而是由适配器创建它们,并在需要在屏幕上显示时用适当的数据填充它们。搜索关于如何做到这一点的基本教程,有很多;请记住适配器是关键。您需要使用ArrayAdapter
并将其添加到列表视图中。然后只需动态地将元素添加到阵列适配器中即可
例如:
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(context, android.R.layout.simple_list_item_1);
tweetList.setAdapter(arrayAdapter);
// ...
arrayAdapter.add("New Item");
ArrayAdapter ArrayAdapter=新的ArrayAdapter(上下文,android.R.layout.simple_list_item_1);
设置适配器(arrayAdapter);
// ...
arrayAdapter.添加(“新项目”);
现在您为arrayAdapter提供了一个id字段,而它应该是一个布局项。谢谢你,伙计,你太棒了!!!!!我在适配器的声明中有一个错误,一旦修复了,适配器现在就可以工作了。现在我有另一个问题,我正在尝试将TextView添加到ListView,这是否可能像我们在WPF中所做的那样?现在listview中的所有项目都显示为“android.widget”。textview@someID@user974038尝试ArrayAdapter
而不是ArrayAdapter
这里的“上下文”是什么??因为“this”不起作用,因为它不是android.content.Context类型
11-10 01:32:16.002: ERROR/AndroidRuntime(867): android.content.res.Resources$NotFoundException: Resource ID #0x7f050030 type #0x12 is not valid
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(context, android.R.layout.simple_list_item_1);
tweetList.setAdapter(arrayAdapter);
// ...
arrayAdapter.add("New Item");