日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android学习笔记ListView

發(fā)布時間:2024/9/5 Android 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android学习笔记ListView 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在手機實際應用中,我們常常需要列表來顯示我們的信息,比如我們的聯(lián)系人列表,短信信息列表等。在Android中通過ListView來實現(xiàn)。

ListView 的XML屬性

屬性名稱

描述

android:choiceMode

規(guī)定此ListView所使用的選擇模式。缺省狀態(tài)下,list沒有選擇模式。屬性值必須設置為下列常量之一:

none,值為0,表示無選擇模式;

singlechoice,值為1,表示最多可以有一項被選中;

multichoice,值為2,表示可以多項被選中。

android:divider

規(guī)定List項目之間用某個圖形或顏色來分隔??梢杂?span lang="en-us">"@[+][package:]type:name"或者"?[package:][type:]name"(主題屬性)的形式來指向某個已有資源;也可以用"#rgb","#argb","#rrggbb"或者"#aarrggbb"的格式來表示某個顏色。

android:dividerHeight

分隔符的高度。若沒有指明高度,則用此分隔符固有的高度。必須為帶單位的浮點數(shù),如"14.5sp"??捎玫膯挝蝗?span lang="en-us">px(pixel像素),dp(density-independent pixels?與密集度無關的像素), sp(scaled pixels based on preferred font size?基于字體大小的固定比例的像素),?in (inches英寸), mm (millimeters毫米)。

可以用"@[package:]type:name"或者"?[package:][type:]name"(主題屬性)的格式來指向某個包含此類型值的資源。

android:entries

引用一個將使用在此ListView里的數(shù)組。若數(shù)組是固定的,使用此屬性將比在程序中寫入更為簡單。

必須以"@[+][package:]type:name"或者?"?[package:][type:]name"的形式來指向某個資源。

android:footerDividersEnabled

設成flase時,此ListView將不會在頁腳視圖前畫分隔符。此屬性缺省值為true。

屬性值必須設置為true或false。

可以用"@[package:]type:name"或者"?[package:][type:]name"(主題屬性)的格式來指向某個包含此類型值的資源。

android:headerDividersEnabled

設成flase時,此ListView將不會在頁眉視圖后畫分隔符。此屬性缺省值為true。

屬性值必須設置為true或false。

可以用"@[package:]type:name"或者"?[package:][type:]name"(主題屬性)的格式來指向某個包含此類型值的資源。

?

例子一:利用Android自帶的List格式

XML布局文件

<?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"><ListViewandroid:id="@id/android:list"android:layout_width="fill_parent"android:layout_height="0dip"android:background="#FFFFFF"android:divider="#000000"android:dividerHeight="2dp"android:layout_weight="1"android:drawSelectorOnTop="false"/><TextViewandroid:id="@id/android:empty"android:layout_width="fill_parent"android:layout_height="fill_parent"android:background="#FF0000"android:text="No Data"/>" </LinearLayout>

源代碼:

@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);String[] contries= getResources().getStringArray(R.array.countries_arry);setContentView(R.layout.activity_listview);setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice,contries));getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); //這里我們直接在源代碼中設置選擇模式,也可以在xml文件中進行配置 getListView().setBackgroundColor(Color.WHITE);getListView().setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> arg0, View view, int position,long id) {Toast.makeText(getApplicationContext(),((TextView) view).getText(), Toast.LENGTH_SHORT).show();}});} ListView的選擇模式有三種: CHOICE_MODE_NONE:表示無選擇模式;設置為無選擇模式時,將不能選中Item項,但能響應ItemClick事件 CHOICE_MODE_SINGLE:表示最多可以有一項被選中 CHOICE_MODE_MULTIPLE:表示可以多項被選中 方法setListAdapter 設置ListView背后的數(shù)據(jù)。參數(shù)為ListAdapter,這里我們使用ArrayAdapter,該Adatper可以指定我們自己定義的Item對象。這里我使用系統(tǒng)已有的對象:android.R.layout.simple_list_item_single_choice? 一般的: simple_list_item_single_choice ? ? 對應的選擇模式為: CHOICE_MODE_SIGLE; (效果如圖一) simple_list_item_multiple_choice 對應的選擇模式為: CHOICE_MODE_MULTIPLE (效果如圖二) simple_list_item_1 ? ? ? ? ? ? ? ? ? ? ? ? 對應的選擇模式為: CHOICE_MODE_NONE (效果如圖三)

自定義ListView 格式

建立描述list item格式的XML文件

<?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingLeft="2dp"android:paddingRight="2dp" > </TextView>

源文件設置xml文件

@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);String[] contries = getResources().getStringArray(R.array.countries_arry);setListAdapter(new ArrayAdapter<String>(this,R.layout.activity_mylistview, contries));getListView().setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> arg0, View view,int position, long id) {Toast.makeText(getApplicationContext(),((TextView) view).getText(), Toast.LENGTH_SHORT).show();}});}

效果圖

?

另外上面用到了數(shù)組string 的定義:在values/string.xml文件中定義如下:

<string-array name="countries_arry"><item>Bharain</item><item>Bangladesh</item><item>Barbados</item><item>Belarus</item><item>Belgium</item><item>Belize</item><item>Benin</item></string-array> 這樣就可以在源代碼中通過R.array.countries_arry引用

Toast:

Toast是一種提供給用戶簡潔信息的視圖。Toast類幫助你創(chuàng)建和顯示該信息。

該視圖已浮于應用程序之上的形式呈現(xiàn)給用戶。因為它并不獲得焦點,即使用戶正在輸入什么也不會受到影響。它的目標是盡可能已不顯眼的方式,使用戶看到你提供的信息。有兩個例子就是音量控制和設置信息保存成功。

使用該類最簡單的方法就是調用一個靜態(tài)方法,讓他來構造你需要的一切并返回一個新的?Toast?對象。

常量

int LENGTH_LONG

持續(xù)顯示視圖或文本提示較長時間。該時間長度可定制。

參見

setDuration(int)

?

int LENGTH_SHORT

持續(xù)顯示視圖或文本提示較短時間。該時間長度可定制。該值為默認值。

參見

setDuration(int)

轉載于:https://www.cnblogs.com/dennytao/p/5351902.html

總結

以上是生活随笔為你收集整理的Android学习笔记ListView的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。