Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在android中向listview动态添加项目_Java_Android - Fatal编程技术网

Java 如何在android中向listview动态添加项目

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

有人能帮我吗?我试图在Android中创建一个ListView,并试图使用代码(而不是XML)将项目加载到它中

这是我目前掌握的代码

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");