<ListView android:id="@+id/android:list" 在 list 前加 android: 的原因
代码:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content">
<ListView android:id="@+id/android:list" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/android:empty" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="您还没有开始写日记呢!点击下边的Menu按钮开始写日记吧:)" /></LinearLayout>
因为在布局里这样写 android:list ,所以在 Activity 中使用 setListAdapter(adapter); 时就默认设置到了这个list上。
如果按一般控件的写法 <ListView android:id="@+id/myListView" …… />,
则需要 findViewById 先得到控件对像,再调用对像的 setListAdapter(adapter);
然后 TextView 的 id 是 android:empty ,表示当 ListView 中没有数据的时候显示 TextView。