您的位置:首页 > 移动开发 > Android开发

用到ListActivity中 , @+id/android:list"和"@android:id/list"的写法

2015-07-10 10:57 423 查看
Android中的列表,当然也可以用ListView来完成所需要的功能,用法是一样的。

废话不说,来关键的。

ListActivity本身继承了关于List操作的众多接口,我们可以方便的重写这些操作中需要的方法来实现自己需要的功能。

如果要用ListActivity,则 Activity的Layout文件中必须包括一个(只能一个)ListView,且ListView的id= "@id/android:list"。

如下代码,一个标准的ListActivity Layout文件:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="fill_parent" 

android:layout_height="fill_parent"

android:paddingLeft="8dp"

android:paddingRight="8dp">

<ListView android:id="@id/android:list"

android:layout_width="fill_parent" 

android:layout_height="fill_parent"

android:background="#00FF00"

android:layout_weight="1"

android:drawSelectorOnTop="false"/>

<TextView id="@id/android:empty"

android:layout_width="fill_parent" 

android:layout_height="fill_parent"

android:background="#FF0000"

android:text="No data"/>

</LinearLayout>

请注意 ListView与TextView的id。前面说了,
1. ListView的Id为固定不变的,为"@id/android:list“,ListActivity会根据id自动查找ListView引用;在 Activity 中使用 setListAdapter(adapter); 时就默认设置到了这个list上。如果按一般控件的写法
<ListView android:id="@+id/myListView" …… />,则需要 findViewById 先得到控件对像,再调用对像的 setListAdapter(adapter); 

2. 但如果当ListView中没有值而又想提示一句话时,那么用于指定显示提示信息的TextView的id 必须为”"@id/android:empty",提示的信息可以通过android:text进行指定。

ps:以上细节一定要注意,否则会报错.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: