Android入門之ListView (一)
ListView是一個經常用到的控制元件,ListView裡面的每個子項Item可以使一個字元 串,也可以是一個組合控制元件。先說說ListView的實現:
1.準備ListView要顯示的數 據 ;
2.使用
一維或多維
動
態陣列
儲存資料;
2.構建介面卡 , 簡單地來說, 介面卡就是 Item陣列 , 動態陣列 有多少元素就生成多少個Item;
3.把 適 配器 新增到ListView,並顯示出來。
接下來,看看本文程式碼所實現的ListView:
接下來,就開始UI的XML程式碼:
main.xml程式碼如下,很簡單,也不需要多做 解釋了:
- <? 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:
- <? 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的原始碼:
- public void onCreate(Bundle savedInstanceState) {
- super .onCreate(savedInstanceState);
- setContentView(R.layout.main);
- //繫結XML中的ListView,作為Item的容器
- ListView list = (ListView) findViewById(R.id.MyListView);
- //生成動態陣列,並且轉載資料
- ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
- for ( int i= 0 ;i< 30 ;i++)
- {
- HashMap<String, String> map = new HashMap<String, String>();
- map.put("ItemTitle" , "This is Title....." );
- map.put("ItemText" , "This is text....." );
- mylist.add(map);
- }
- //生成介面卡,陣列===》ListItem
- SimpleAdapter mSchedule = new SimpleAdapter( this , //沒什麼解釋
- mylist,//資料來源
- R.layout.my_listitem,//ListItem的XML實現
- //動態陣列與ListItem對應的子項
- new String[] { "ItemTitle" , "ItemText" },
- //ListItem的XML檔案裡面的兩個TextView ID
- new int [] {R.id.ItemTitle,R.id.ItemText});
- //新增並且顯示
- list.setAdapter(mSchedule);
- }
相關文章
- Android入門之ListView (二)AndroidView
- Android入門第七篇之ListViewAndroidView
- Android之ListViewAndroidView
- Android之ListView與SimpleAdapter的使用AndroidViewAPT
- Android ListViewAndroidView
- Android 自定義 View 之入門篇AndroidView
- Android開發之ListView使用經驗分享AndroidView
- Android開發者的Flutter入門(一)AndroidFlutter
- OpenGL Android課程一:入門Android
- Android MVP模式從入門到進門(一)AndroidMVP模式
- Android 測試入門之---Monkey testAndroid
- Android的ListViewAndroidView
- Flutter入門進階之旅(十四)ListView&GridViewFlutterView
- 【mybatis學習之入門(一)】MyBatis
- ios基礎之入門(一)iOS
- android之豎直滾動控制元件-ListViewAndroid控制元件View
- ListView 之非同步載入圖片亂序View非同步
- ACM入門之新手入門ACM
- Android入門教程 | RecyclerView使用入門AndroidView
- Mac之Android Studio開發NDK入門MacAndroid
- ArcGIS for Android入門程式之DrawTool2.0Android
- android ListView非同步載入圖片(雙快取)AndroidView非同步快取
- android中的ListViewAndroidView
- android listview and scrollviewAndroidView
- android:ListView bbs DemoAndroidView
- Flutter之封裝一個下拉重新整理上拉載入的listviewFlutter封裝View
- Android 入門(一)四大元件Android元件
- Android OkHttp原始碼解析入門教程(一)AndroidHTTP原始碼
- android 入門- 詞彙Android
- Android Bluetooth 入門Android
- 《Android Gradle權威指南》之Gradle入門AndroidGradle
- Android開發入門之熟悉開發環境Android開發環境
- 一、Ansible基礎之入門篇
- Android入門教程 | Kotlin協程入門AndroidKotlin
- android之截圖(包括擷取scrollview與listview的)AndroidView
- Android設計模式原始碼解析之ListView觀察者模式Android設計模式原始碼View
- 《Flutter 入門經典》之“Flutter 入門 ”Flutter
- Android ListView元件樣式AndroidView元件