android开发基础_列表视图一(List View)

官网解释:

  a view that shows items in a verically list,The items come from the ListAdapter associated with this view.

  创建listview有两种方式:

      1.直接使用ListView进行创建(一:可以用数组,二:调用vlaues里面预先设置好的)

      2.让activity集成listactivity

一旦程序中获得了ListView之后,接下来就需要为ListView设置他要显示的列表了, (需要提供一个显示的列表项),就需要借助于内容Adapter了,内容Adapter负责提供需要显示的列表项。

XML属性

android:choiceMode         设置listview的选择行为

android:divider                 设置list列表项的分割条(既可以用颜色分割,也可以用Drawable分割)

android:dividerHeight        设置分割条的高度

android:entries              制定一个数组资源,android根据数组资源生成ListView

android:footerDividersEnabled  设置为false,则不再footer view之前绘制分隔条

android:headerDividersEnabled 如果设为false,则不再header view 后绘制分隔符

View Code
 1 <?xml version="1.0" encoding="utf-8"?>
2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 android:orientation="vertical"
4 android:layout_width="fill_parent"
5 android:layout_height="fill_parent"
6 >
7 <TextView
8 android:layout_width="fill_parent"
9 android:layout_height="wrap_content"
10 android:text="@string/hello"
11 />
12 <!-- 直接使用数组资源给出列表项 -->
13 <ListView
14 android:layout_width="fill_parent"
15 android:layout_height="wrap_content"
16 android:entries="@array/books"
17 android:divider="@drawable/red"
18 />
19 <!-- 使用Adapter提供列表项的ListView、 -->
20 <ListView
21 android:id="@+id/listview2"
22 android:layout_width="fill_parent"
23 android:layout_height="wrap_content"
24 android:divider="@drawable/green"
25 />
26 </LinearLayout>

java代码如下:

 

View Code
 1 package com.wbk.listview;
2
3 import android.app.Activity;
4 import android.os.Bundle;
5 import android.widget.ArrayAdapter;
6 import android.widget.ListView;
7
8 public class ListviewActivity extends Activity {
9 /** Called when the activity is first created. */
10 @Override
11 public void onCreate(Bundle savedInstanceState) {
12 super.onCreate(savedInstanceState);
13 setContentView(R.layout.main);
14 ListView list2 = (ListView) findViewById(R.id.listview2);
15 // 定义一个数组
16 String[] arr = { "item1 ", "item2", "item3" };
17
18 // 将数组包装arrayadapter
19
20 ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this,
21 android.R.layout.simple_list_item_1, arr);
22 list2.setAdapter(arrayAdapter);
23 }
24 }

还有一个values如下:

View Code
1 <?xml version="1.0" encoding="UTF-8"?>
2 <resources>
3 <string-array name="books">
4 <item>1</item>
5 <item>2</item>
6 <item>3</item>
7 <item>4</item>
8 </string-array>
9 </resources>


分析:以上采用了两种方法实现了listview,

第一种是在values下新建一个xml文件,在xml文件中设置,listview设置所显示的值,然后在布局文件下调用books

(android:entries="@array/books")

第二种方法是:在java里面findlistview,通过ArrayAdapter决定ListView显示的组件,

运行程序结果如下:

android开发基础_列表视图一(List View)

 

  

 

 

你可能感兴趣的:(Android开发)