Android ListView设置适配器问题

Android ListView设置适配器问题,android,android-layout,android-listview,Android,Android Layout,Android Listview,我正试图在android上绑定数据并创建一个listview,但我不能 我在互联网上看到了一些代码,这些代码很有效,但我不知道为什么,我不想动态创建一个新的ListView,我想使用main.xml上列出的一个 为什么我可以这样做: ListView lv = new ListView(this); lv.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,PEOPL

我正试图在android上绑定数据并创建一个listview,但我不能

我在互联网上看到了一些代码,这些代码很有效,但我不知道为什么,我不想动态创建一个新的ListView,我想使用main.xml上列出的一个

为什么我可以这样做:

ListView lv = new ListView(this);
        lv.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,PEOPLE));
        setContentView(lv);
ListView lv=新的ListView(此);
lv.setAdapter(新的ArrayAdapter(这个,android.R.layout.simple_list_item_1,PEOPLE));
setContentView(lv);
但我不能这么做:

ListView listPessoas = (ListView) findViewById(R.id.listPessoas);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.id.listPessoas, PESSOAS);
        listPessoas.setAdapter(adapter);
ListView listPessoas=(ListView)findViewById(R.id.listPessoas);
ArrayAdapter adapter=新的ArrayAdapter(this,R.id.listPessoas,PESSOAS);
listPessoas.setAdapter(适配器);

您编写的内容不正确,数组适配器构造函数中的第二个参数应该是每个列表项的简单布局,而不是列表视图


如果列表项具有自定义复杂布局,则还需要编写自定义适配器。

此处的错误是在创建新的
阵列适配器时出现的。您正在传递
R.id.listPessoas
作为每行使用的行视图。这是
列表视图的id
。正在查找包含要用于列表每行的文本视图的布局id。将
R.id.listPessoas
更改为
android.R.layout.simple\u list\u item\u 1
,您的代码应该可以工作。
simple\u list\u item\u 1
布局只是数据将绑定到的
TextView

什么是
R.id.pessoas

这对我来说很好:

String[] x = new String[]{"AAA","BBB","CCC"};
ListView lv = (ListView) findViewById(R.id.listView1);
ArrayAdapter<String> test = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,x);
lv.setAdapter(test);
String[]x=新字符串[]{“AAA”、“BBB”、“CCC”};
ListView lv=(ListView)findViewById(R.id.listView1);
ArrayAdapter测试=新的ArrayAdapter(这是android.R.layout.simple\u list\u item\u 1,x);
低压设置适配器(测试);

如果您遇到错误

getApplicationContext();将工作而不是“这个”