欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android編程開發(fā)中ListView的常見用法分析

 更新時間:2015年10月31日 14:36:30   作者:Vector_Yi  
這篇文章主要介紹了Android編程開發(fā)中ListView的常見用法,較為詳細的分析了ListView的功能及常見使用方法,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了Android編程開發(fā)中ListView的常見用法。分享給大家供大家參考,具體如下:

一、ListView的使用步驟

ListView的使用通常有以下三個要素:

(1)ListView中每個條目的布局;
(2)填充進入ListView中的內(nèi)容;
(3)將內(nèi)容與頁面進行整合的Adapter.

因此,使用ListView也通常有以下三個步驟:

(1)創(chuàng)建ListView條目的布局文件(或使用Android SDK提供的布局);
(2)創(chuàng)建填充進入ListView中的內(nèi)容,如字符串、圖片等;
(3)創(chuàng)建Adapter并將其與ListView綁定.

二、使用默認的布局文件創(chuàng)建ListView

因為本例中使用的是Android SDK默認的布局文件:android.R.layout.simple_list_item_1,所以只需創(chuàng)建主Activity布局文件。

ListViewTest.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 android:layout_width="fill_parent" 
 android:layout_height="fill_parent" 
 android:orientation="vertical" > 
 <ListView 
  android:id="@+id/mylistview" 
  android:layout_width="fill_parent" 
  android:layout_height="fill_parent" > 
 </ListView> 
</LinearLayout>

 接下來是Activity文件。

ListViewTestActivity.java

package com.blogtest; 
import android.app.Activity; 
import android.os.Bundle; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 
public class ListViewTestActivity extends Activity { 
 private static String[] strs = new String[] { "1", "2", "3", "4", "5" };//定義要顯示的數(shù)據(jù) 
 private ListView myListView; 
 /** Called when the activity is first created. */ 
 @Override 
 public void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.listviewtest); 
  findWidgets(); 
  setAdapter(); 
 } 
 private void findWidgets() { 
  myListView = (ListView) findViewById(R.id.mylistview); 
 } 
 private void setAdapter() { 
  myListView.setAdapter(new ArrayAdapter<String>(this,  //此例中用的是ArrayAdapter 
    android.R.layout.simple_list_item_1, strs));//使用系統(tǒng)自帶的布局文件 
 } 
}

運行結果為:

三、支持多項選擇的ListView

Android還提供了一個支持多項選擇的item布局文件:android.R.layout.simple_list_item_multiple_choice.

但還必須調(diào)用ListView.setChoiceMode()方法。

修改的代碼片段如下:

private void setAdapter() { 
  myListView.setAdapter(new ArrayAdapter<String>(this, 
    android.R.layout.simple_list_item_multiple_choice, strs)); 
  myListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 
}

運行結果為:

四、響應觸摸事件

為了讓ListView中的Item響應點擊事件,需要創(chuàng)建一個OnItemClickListener類并綁定給該ListView。廢話不多說,以下為Activity類文件:

package com.blogtest; 
import android.app.Activity; 
import android.app.AlertDialog; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.AdapterView.OnItemClickListener; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 
public class ListViewTestActivity extends Activity { 
 private static String[] strs = new String[] { "0", "1","2", "3", "4", "5" }; 
 private ListView myListView; 
 /** Called when the activity is first created. */ 
 @Override 
 public void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.main); 
  findWidgets(); 
  setAdapter(); 
  setListener(); 
 } 
 private void findWidgets() { 
  myListView = (ListView) findViewById(R.id.mylistview); 
 } 
 private void setAdapter() { 
  myListView.setAdapter(new ArrayAdapter<String>(this, 
    android.R.layout.simple_list_item_1, strs)); 
 } 
 private void setListener() { 
  myListView.setOnItemClickListener(new OnItemClickListener() { 
   @Override 
   public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
     long arg3) { 
    // TODO Auto-generated method stub 
    new AlertDialog.Builder(ListViewTestActivity.this) 
      .setMessage("Clicked Line No." + arg2) 
      .setPositiveButton("Confirm", null).show(); 
   } 
  }); 
 }
}

運行結果為:

除了OnItemClickListener之外,還有OnItemLongClickListener,OnItemSelectedListener等監(jiān)聽器.

希望本文所述對大家Android程序設計有所幫助。

相關文章

  • 解析Android框架之Volley源碼

    解析Android框架之Volley源碼

    我們知道Volley是在2013年Google I/O大會上推出了一個新的網(wǎng)絡通信框架,他的設計目的就是為了那些請求數(shù)據(jù)量不是特別大,但是又是特別頻繁的網(wǎng)絡操作非常適合。但是對于數(shù)據(jù)量較大的請求,比如說下載一個較大的文件,Volley可能相比于其他的框架,就有點不足了。
    2021-06-06
  • Android MonoRepo多倉和單倉的差別理論

    Android MonoRepo多倉和單倉的差別理論

    這篇文章主要為大家介紹了Android MonoRepo多倉和單倉的差別理論,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Android中gravity、layout_gravity、padding、margin的區(qū)別小結

    Android中gravity、layout_gravity、padding、margin的區(qū)別小結

    這篇文章主要介紹了Android中gravity、layout_gravity、padding、margin的區(qū)別小結,需要的朋友可以參考下
    2014-08-08
  • Android首頁無限輪播功能的示例代碼

    Android首頁無限輪播功能的示例代碼

    這篇文章主要介紹了Android首頁無限輪播功能的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • Android實現(xiàn)圖片壓縮示例代碼

    Android實現(xiàn)圖片壓縮示例代碼

    本篇文章主要介紹了Android實現(xiàn)圖片壓縮示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • Android學習筆記之ListView復用機制詳解

    Android學習筆記之ListView復用機制詳解

    本篇文章主要介紹了Android學習筆記之ListView復用機制詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • 詳解android寫一個選擇圖片的示例代碼

    詳解android寫一個選擇圖片的示例代碼

    本篇文章主要介紹了android寫一個選擇圖片的示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-12-12
  • Kotlin協(xié)程之Flow異常示例處理

    Kotlin協(xié)程之Flow異常示例處理

    這篇文章主要為大家介紹了Kotlin協(xié)程之Flow異常處理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • Flutter Reusable Lottie Animations技巧

    Flutter Reusable Lottie Animations技巧

    這篇文章主要為大家介紹了Flutter Reusable Lottie Animations技巧,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • Android自定義實現(xiàn)BaseAdapter的普通實現(xiàn)

    Android自定義實現(xiàn)BaseAdapter的普通實現(xiàn)

    這篇文章主要為大家詳細介紹了Android自定義實現(xiàn)BaseAdapter的普通實現(xiàn),感興趣的小伙伴們可以參考一下
    2016-08-08

最新評論