ListView控件显示列表有两种方式,直接使用数组资源或者使用ArrayAdapter类,下面一个简单的工程实现了这两种方法。
ArrayAdapterList类:
代码语言:javascript复制public class ArrayAdapterList extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);//关联布局文件
ListView list2 = (ListView)findViewById(R.id.list2);//获得界面上的列表视图控件
//定义一个数组
String[] arr ={"易建联","姚明","林书豪"};
//将数组包装ArrayAdapter
ArrayAdapter<String arrayAdapter = new ArrayAdapter<String (
this , android.R.layout.simple_list_item_1 , arr);
//为ListView设置Adapter
list2.setAdapter(arrayAdapter);
}
}
主界面定义两个ListView:
代码语言:javascript复制<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
<!-- 直接使用数组资源给出列表项 --
<ListView
android:layout_width="fill_parent"
android:layout_height="300dp"
android:divider="@drawable/blue"
android:entries="@array/books"
android:headerDividersEnabled="false"
</ListView
<!-- 使用ArrayAdapter提供列表项的ListView --
<ListView
android:id="@ id/list2"
android:layout_width="fill_parent"
android:layout_height="215dp"
android:divider="@drawable/green"
</ListView
</LinearLayout
数组资源:
代码语言:javascript复制<resources
<string-array name="books"
<item 奥尼尔</item
<item 邓肯</item
<item 罗宾逊</item
<item 加内特</item
</string-array
</resources
配置文件,设置ArrayAdapterList为启动activity:
代码语言:javascript复制<application android:icon="@drawable/icon" android:label="@string/app_name"
<activity android:name="org.niit.listview.ArrayAdapterList"
android:label="@string/app_name"
<intent-filter
<action android:name="android.intent.action.MAIN" /
<category android:name="android.intent.category.LAUNCHER" /
</intent-filter
</activity
</application
运行效果:
以上就是本文的全部内容,希望对大家的学习有所帮助。