您好,登錄后才能下訂單哦!
在android開發中ListView是比較常用的組件,它以列表的形式展示具體內容,并且能夠根據數據的長度自適應顯示。
一、簡單應用
1、打開“res/layout/activity_main.xml”文件。
(1)從工具欄向activity拖出1個列表視圖ListView。
(2)打開activity_main.xml文件。
完整代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ListView
android:id="@+id/news"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
</ListView>
</RelativeLayout>
2、ListView列表視圖代碼
(1)打開“src/com.genwoxue.listview/MainActivity.java”文件。
然后輸入以下代碼:
package com.example.hw;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends Activity {
private ListView lvNews = null;
private String news[] = {"互聯網產品中的情感化設計","有效導向社交產品的商業價值","移動開發者:得90后者得天下",
"用戶體驗:從App的加載頁面說開去","用扁平化的界面設計吸引用戶","實體與數字世界的交集",
"網絡社區用戶成長的5個思考模式","十大值得關注的傳統企業電商","2013年十大熱點技術發展趨勢","了解產品的開發環節:環形設計論",
"客戶忠誠度的四個層次","在手機背面貼張'紙'就能輕松充電","互聯網公司是怎樣激發你的消費欲望的","高效工作的信息搜集及管理術"};
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lvNews = (ListView) findViewById(R.id.news);
lvNews.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,news));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
上面代碼使用了ArrayAdapter(Context context, int textViewResourceId, List<T> objects)來裝配數據,要裝配這些數據就需要一個連接ListView視圖對象和數組數據的適配器來兩者的適配工作,ArrayAdapter的構造需要三個參數,依次為this,布局文件(注意這里的布局文件描述的是列表的每一行的布局,android.R.layout.simple_list_item_1是系統定義好的布局文件只顯示一行文字,數據源(一個List集合)。同時用setAdapter()完成適配的最后工作。
(2)運行結果,可以上下滑動:
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。