編輯:初級開發
GridVIEw
[功能]
以前提及過GridView 說也是一種AdapterView 和ListVIEw有點像 今天花了時間 用了一些 有點心得 和大家分享分享
[思路]
1. 既然和ListVIEw像 那麼應該還是通過 setAdapter() 來設置吧
2. 因為我想顯示的是一些圖片信息 必須用到ImageView 不是默認的Adapter用到的TextVIEw 所以只能自己擴展了
[代碼]
1. 定義包含GridVIEw 的 main.xmk
Java代碼
< ?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"
>
< GridVIEw
android:id="@+id/gride"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
< strong> android:numColumns="3"
android:verticalSpacing="5dip"
/>
< /LinearLayout>
< ?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"
>
< GridVIEw
android:id="@+id/gride"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:numColumns="3"
android:verticalSpacing="5dip"
/>
< /LinearLayout>
這行應該注意一下:
Java代碼
android:numColumns="3"
android:numColumns="3"
用來設定GridView每行顯示的View數目 如果沒有這行 會默認每行顯示一個View 和ListVIEw 的一樣
2. 自定義 class ImageList extends BaseAdapter 其中主要是:
寫道
View getView(int position, View convertView, VIEwGroup parent)
用於顯示目標ImageVIEw
Java代碼
public class ImageList extends BaseAdapter {
Activity activity;
//construct
public ImageList(Activity a ) {
activity = a;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return image.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return image[position];
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, VIEwGroup parent) {
// TODO Auto-generated method stub
ImageView iv = new ImageVIEw(activity);
iv.setImageResource(image[position]);
return iv;
}
}
public class ImageList extends BaseAdapter {
Activity activity;
//construct
public ImageList(Activity a ) {
activity = a;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return image.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return image[position];
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, VIEwGroup parent) {
// TODO Auto-generated method stub
ImageView iv = new ImageVIEw(activity);
iv.setImageResource(image[position]);
return iv;
}
}
3. 給GridVIEw指定Adapter
Java代碼
GridView gv = (GridView) findVIEwById(R.id.gride);
ImageList adapter = new ImageList(this);
gv.setAdapter(adapter);
GridView gv = (GridView) findVIEwById(R.id.gride);
ImageList adapter = new ImageList(this);
gv.setAdapter(adapter);
所以最後效果圖是這樣的 網格布局
外特性空間的Activity 我們先來看看,Android應用開發人員接觸的外特性空間中的Activity,對於AMS (activ
這篇文章沒有打算有一個很好的邏輯去介紹android的某個方面,全盤大致上就是我接觸、了解android的ui開發後到現在的一些感想以及個人理解吧! &nbs
上課講義之 1: 高煥堂講解 Intent-based ProgrammingAndroid的4種嫡系組件(即Activity、Service、IntentReceiv
58.List11 多選List 源碼就這些:注意第8行 final ListView listView = getListVIEw();獲得當前List&n