android列表视图无法绑定数组

时间:2012-08-19 12:49:55

标签: android android-listview

我检查了每个listView绑定教程,但我在适配器部分有很强烈的混淆。 首先看我的代码

ListView listView = (ListView) findViewById(R.id.mylist);
String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
  "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
  "Linux", "OS/2" };

// First paramenter - Context
// Second parameter - Layout for the row
// Third parameter - ID of the TextView to which the data is written
// Forth - the Array of data
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
  android.R.layout.simple_list_item_1, android.R.id.text1, values);

// Assign adapter to ListView
listView.setAdapter(adapter); 

见这一行

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
      android.R.layout.simple_list_item_1, android.R.id.text1, values);
这是什么? android.R.layout.simple_list_item_1谁说我们可以通过 R 来引用listeView ???

为什么???请帮忙

3 个答案:

答案 0 :(得分:1)

检查文档:

  

public ArrayAdapter(Context context,int resource,int textViewResourceId,T [] objects)

     

参数

     

context当前上下文。

     

resource包含要在何时使用的布局的布局文件的资源ID   实例化视图。

     

textViewResourceId要填充的布局资源中TextView的ID

     

objects要在ListView中表示的对象。

http://developer.android.com/reference/android/widget/ArrayAdapter.html#ArrayAdapter(android.content.Context,int,int,T [])

你应该在布局文件simple_list_item_1.xml中有一个标识为text1的textview。

答案 1 :(得分:0)

而不是

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, android.R.id.text1, values);

尝试使用

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, values);

或使用

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,R.id.theTextViewID, values);

答案 2 :(得分:0)

使用以下代码....

 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,

android.R.layout.simple_list_item_1,values);