我需要扩展ListActivity并填充自定义布局,以便我执行以下操作
public class BizList extends ListActivity {
String bizNames[]={"one", "two","theree","four"};
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.bizlist);
//ListView listviewMe = (ListView)findViewById(android.R.id.list);
//ListView listview = this.getListView();
setListAdapter(new ArrayAdapter<String>(this, android.R.id.list, bizNames));
/* ListView list1 = (ListView) findViewById(R.id.listView1);
list1.setAdapter(new ArrayAdapter<String>(getApplicationContext(),R.layout.list_item,startDates_str));;*/
}
我布局中的ListView是
<ListView
android:id="@id/android:list"//***have also tried*** android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/imageView2"
android:layout_centerHorizontal="true" >
</ListView>
但我一直收到此错误
android.content.res.resources $ notfoundexception:文件格式xml类型布局资源ID
非常感谢任何和所有帮助。我希望这很简单。 thx agin。
答案 0 :(得分:0)
如果你想将它添加到你必须写的资源中 android:id =“@ + id / listView”你忘记了“+”
<ListView
android:id="@+id/listView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/imageView2"
android:layout_centerHorizontal="true" >
</ListView>
在你的onCreate方法
ListView lv = (ListView) findViewById(R.id.listView);
ArrayAdapter<String> myadpater = new ArrayAdapter<String>(
this, android.R.layout.simple_list_item_1, bizNames);
lv.setAdapter(myadpater);
希望它现在有效。请投票如果正确
答案 1 :(得分:0)
首先,ListActivity
自动查找列表,资源ID必须是......
android:id="@android:id/list"
其次,在创建ArrayAdapter
时,不要将ListView
本身的id传递给构造函数。相反,您应该传递列表项布局的资源ID。
试试这个......
setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, bizNames));