編輯:關於Android編程
在開發的過程中,經常會用到列表,google已經為我們提供了列表的控件:listview。今天介紹的是最簡單的listview。
使用listview首先需要在布局文件中添加一個listview控件,類似下面這樣:
然後就是在我們的Activity中獲取到該listview,並將數據關聯到這個listview,這裡簡單的介紹三種關聯的方式:
1 使用自定義的Adapter
首先我們需要自己編寫一個java類繼承BaseAdapter,並實現裡面的方法。然後我們調用listview的setAdapter方法,並創建一個我們自定義的Adapter的實例,作為參數傳入。
下面是自定義的Adapter類:
private class myAdapter extends BaseAdapter{
@Override
public int getCount() {
//返回listview的item的總數
return 50;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
// 手工穿件listview的item
// @Override
// public View getView(int position, View convertView, ViewGroup parent) {
// Log.i("mxy", "位置" + position);
// TextView tv = new TextView(getApplicationContext());
// tv.setText("位置" + position);
// tv.setTextColor(Color.RED);
// return tv;
// }
//通過布局創建listview的item
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Log.i("mxy", "位置" + position);
View view = View.inflate(getApplicationContext(), R.layout.list_item, null);
TextView mTextViewPosition = (TextView) view.findViewById(R.id.tv_position);
TextView mTextViewName= (TextView) view.findViewById(R.id.tv_name);
mTextViewPosition.setText("位置 " + position);
mTextViewName.setText("姓名 " + position);
return view;
}
}
其中比較重要的是getView,這個方法返回的View就是我們在手機上顯示的listview裡面的item的View,上面的例子中寫了兩種創建item的方法都是可以的。
下面是listview的adapter的代碼:
lv = (ListView) findViewById(R.id.lv);
//自定義的Adapter
lv.setAdapter(new myAdapter());
2 使用ArrayAdapter
代碼如下:
for(int i = 0 ; i < 50 ; i ++){
ary[i] = "功能" + i;
}
lv.setAdapter(new ArrayAdapter(this, R.layout.list_item, R.id.tv_position, ary));
這種方式適合比較簡單的listview,每行只需要填一個數據,ArrayAdapter的參數分別是:Context、item的布局文件、需要賦值的item中控件的id、數組。對於復雜一點的我們可以使用第3種方式。
3 使用SimpleAdapter
例子代碼如下:
List這裡面的參數就比上面使用ArrayAdapter復雜多了,可以同時向布局文件中得多個控件賦值。
對於listview我們在使用的過程中,並不會立即創建所有的item,只有我們滑動到item在屏幕上顯示的時候才會顯示,這樣應該會加快運行的效率吧。
例子工程下載地址:http://download.csdn.net/detail/mengxiangyue/7036433
轉載請注明出處:http://blog.csdn.net/mengxiangyu
Android本地文件點擊視頻播放器vitamio版
本博客用Android studio集成了vitamio的自定義視頻播放器,同時可以在文件管理中選擇播放,想要一個自己的視頻播放器這邊便可以滿足實現具體功能如下:1.sd
了解android7:通知直接回復
這是<是時候來了解android7>系列的第三篇文章了, 前面兩篇分別介紹了多窗口模式和shortcut功能, 今天我們來點簡單的, 說一說通知直接回復功能.
Android4.4深入淺出之SurfaceFlinger總體結構
Android4.4 GUI系統框架之SurfaceFlinger 一. Android GUI框架: SurfaceFlinger:每當用戶程
Android實現App中導航Tab欄懸浮的功能
首先是“餓了麼”導航Tab欄懸浮的效果圖。大家可以看到上圖中的“分類”、“排序”、“篩選”會懸浮在app的頂部,狀態隨著ScrollView(也可能不是ScrollVie