Android入門第六篇之ListView (一)

來源:互聯網
上載者:User

ListView是一個經常用到的控制項,ListView裡面的每個子項Item可以使一個字串,也可以是一個群組控制項。先說說ListView的實現:

1.準備ListView要顯示的資料 ;

2.使用 一維或多維 動態數組 儲存資料;


2.構建適配器 , 簡單地來說, 適配器就是 Item數組 , 動態數組 有多少元素就產生多少個Item;

3.把 適配器 添加到ListView,並顯示出來。

 


接下來,看看本文代碼所實現的ListView:

 

接下來,就開始UI的XML代碼:

main.xml代碼如下,很簡單,也不需要多做解釋了:

view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout   
        android:id="@+id/LinearLayout01"   
        android:layout_width="fill_parent"   
        android:layout_height="fill_parent"   
        xmlns:android="http://schemas.android.com/apk/res/android"> 
          
        <ListView android:layout_width="wrap_content"   
                  android:layout_height="wrap_content"   
                  android:id="@+id/MyListView"> 
        </ListView> 
</LinearLayout> 
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        android:id="@+id/LinearLayout01"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        xmlns:android="http://schemas.android.com/apk/res/android">
       
        <ListView android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:id="@+id/MyListView">
        </ListView>
</LinearLayout>
 

 

my_listitem.xml的代碼如下,my_listitem.xml用於設計ListView的Item:

view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout   
        android:layout_width="fill_parent"   
        xmlns:android="http://schemas.android.com/apk/res/android"   
        android:orientation="vertical" 
        android:layout_height="wrap_content"   
        android:id="@+id/MyListItem"   
        android:paddingBottom="3dip"   
        android:paddingLeft="10dip"> 
        <TextView   
                android:layout_height="wrap_content"   
                android:layout_width="fill_parent"   
                android:id="@+id/ItemTitle"   
                android:textSize="30dip"> 
        </TextView> 
        <TextView   
                android:layout_height="wrap_content"   
                android:layout_width="fill_parent"   
                android:id="@+id/ItemText"> 
        </TextView> 
</LinearLayout> 
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        android:layout_width="fill_parent"
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_height="wrap_content"
        android:id="@+id/MyListItem"
        android:paddingBottom="3dip"
        android:paddingLeft="10dip">
        <TextView
                android:layout_height="wrap_content"
                android:layout_width="fill_parent"
                android:id="@+id/ItemTitle"
                android:textSize="30dip">
        </TextView>
        <TextView
                android:layout_height="wrap_content"
                android:layout_width="fill_parent"
                android:id="@+id/ItemText">
        </TextView>
</LinearLayout>
 

解釋一下,裡面用到的一些屬性:

1.paddingBottom="3dip",Layout往底部留出3個像素的空白地區

2.paddingLeft="10dip",Layout往左邊留出10個像素的空白地區

3.textSize="30dip",TextView的字型為30個像素那麼大。

 

最後就是JAVA的原始碼:

view plaincopy to clipboardprint?
public void onCreate(Bundle savedInstanceState) {  
    super.onCreate(savedInstanceState);  
    setContentView(R.layout.main);  
    //綁定XML中的ListView,作為Item的容器  
    ListView list = (ListView) findViewById(R.id.MyListView);  
      
    //產生動態數組,並且轉載資料

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.