JLo*_*uis 2 android listview listactivity android-listview runtimeexception
我正在尝试将我的主Activity扩展为"ListActivity"(以前扩展为:Activity)以使用onListItemClick,但是logcat,发送给我"你的内容必须有一个ListView,其id属性是'android.r.id.list "".(我正在使用SQLite填充ListView).
mi xml是:
<ListView
android:id="@+id/list" // to "@id/android:list" or other styles (but nothing works)
android:layout_width="fill_parent"
android:layout_height="fill_parent"/> // or closing with </ListView>
Run Code Online (Sandbox Code Playgroud)
这是ListView的完整xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" /></LinearLayout>
Run Code Online (Sandbox Code Playgroud)
我的主要类来处理ListView:
public class lay_main extends ListActivity{
public ListView list;
private DBHelper myAdap;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.lay_main);
collectXML();
setupDataBase();
setupAdapter();
}
private void collectXML()
{
list = (ListView)findViewById(R.id.list);
}
private void setupDataBase() {
myAdap = new DBHelper(getApplicationContext(), "courses", null, 1);
myAdap.insertCourses();
}
private void setupAdapter()
{
if(myAdap.getCourses()!=null)
{
cAdapter adapter = new cAdapter(this, R.layout.list_courses, myAdap.getCourses());
list.setAdapter(adapter);
}
}}
Run Code Online (Sandbox Code Playgroud)
我读过Android:你的内容必须有一个ListView,其id属性是android.R.id.list,或者:RuntimeException:你的内容必须有一个其属性为'android.R.id.list'的ListView,以及其他问题,但不适合我,这里发生了什么?
非常感谢你的帮助
Adi*_*mro 11
当你想扩展时,ListActivity你应该使用
android:id="@android:id/list"
Run Code Online (Sandbox Code Playgroud)
你会得到你ListView的
ListView listview = this.getListView();
Run Code Online (Sandbox Code Playgroud)
要么
ListView listview = (ListView)findViewById(android.R.id.list);
//consider android.R prefix
Run Code Online (Sandbox Code Playgroud)
这是详细解释:如何在Activity中使用getListView()?
| 归档时间: |
|
| 查看次数: |
3728 次 |
| 最近记录: |