Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android學習筆記3-listView

android學習筆記3-listView

編輯:關於Android編程

首先,listview 並不是單純的靠一個部件實現的,而是通過繼承ListActivity實現的,也就是說Activity是一個ListActivity。

然後定義一個ArraryAdapter作為數據源

接著用setListAdapter將ArrayAdapter的內容附給listview

然後改寫onListItemClick實現點擊事件

你必須定義一個id為 android:id="@android:id/list" 的ListView 作為ListActivity的關聯ListView

java文件

package com.example.listview;

import android.os.Bundle;

import android.app.ListActivity;//list視圖

import android.view.View;//view的基類

import android.widget.*;//所有安卓部件

//加載必須的包

publicclassMainActivity extends ListActivity {

//主活動視圖是繼承自listActivity的

TextViewselection;

String[]items={"a","b","c","d","e","f","g","h","i","j"};

@Override

protectedvoidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

selection=(TextView)findViewById(R.id.selection);

ArrayAdapter ala=newArrayAdapter(this,android.R.layout.simple_expandable_list_item_1,items);

//新建一個ArrayAdapter《string》適配器

//其中有三個參數,第一個是擁有該適配器的主體,第二個是列表的視圖樣式(外觀樣子),第三個是數據列表

setListAdapter(ala);

//設置列表的適配器,必須在xml文件裡面定義一個listview部件,同時將該部件的id設置為:android:id/list,

//個人猜想是listActivity會自動查找這個 id:android:id/list ,如果沒有在xml設置一個id為 android:id/list 的

//listview會提出錯誤的。

}

publicvoid onListItemClick(ListView parent,View v,int postion,long id )

{

//重寫了ListActivity的onListItemClick事件,也就是說,如果Activity是繼承自ListActivity的話,

//那麼你定義一個onListItemClick就表示你在重寫onListItemClick事件了。

selection.setText(items[(int)id]);//與selection.setText(items[postion])等價

}

}

xml文件

"http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context=".MainActivity" >

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/hello_world"

android:id="@+id/selection"

/>

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

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:layout_below="@+id/selection" />

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved