我检查了每个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
???
为什么???请帮忙
答案 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);