• Gridview表格控件


    Gridview表格控件

    效果图:

    分析:

    使用和ListvVew很像,都是经过适配器将数据绑定到控件上

    具体步骤如下:

    1、创建GridView控件,并指定列数

      android:numColumns="3"

    2、创建显示数据项的数据容器,是一个Lauout文件,里面一个ImageView,一个TextView

      上面是ImageView,“小白10”是TextView显示的

    3、创建好数据,这里用List来实现

      private List<HashMap<String, Object>> mData;

      mData=new ArrayList<HashMap<String,Object>>();

      然后是创建HashMap

        HashMap<String, Object> map=new HashMap<String, Object>();

           map.put("txt", "小白"+i);   

        map.put("image", images[i]);

        mData.add(map);

    4、创建数据适配器,并且将数据绑定到数据适配器

      private SimpleAdapter adapter;

      adapter=new SimpleAdapter(this, mData, R.layout.itemview1,new String[]{"txt","image"}, new int[]{R.id.textView1,R.id.iv_avator});

    5、为GridView设置数据适配器

      gridview.setAdapter(adapter);

    代码:

    fry.Activity01

     1 package fry;
     2 
     3 import java.util.ArrayList;
     4 import java.util.HashMap;
     5 import java.util.List;
     6 import java.util.Map;
     7 
     8 import com.example.gridView.R;
     9 
    10 import android.app.Activity;
    11 import android.os.Bundle;
    12 import android.widget.GridView;
    13 import android.widget.SimpleAdapter;
    14 
    15 public class Activity01 extends Activity{
    16     private List<HashMap<String, Object>> mData;
    17     private GridView gridview;
    18     private SimpleAdapter adapter;
    19     private int[] images=new int[]{
    20             R.drawable.image1,R.drawable.image2,R.drawable.image3,
    21             R.drawable.image5,R.drawable.image6,R.drawable.image7,
    22             R.drawable.image8,R.drawable.image9,R.drawable.image10,
    23             R.drawable.image11,R.drawable.image12,R.drawable.image13,
    24             R.drawable.image14,R.drawable.image4
    25     };
    26     
    27     @Override
    28     protected void onCreate(Bundle savedInstanceState) {
    29         // TODO Auto-generated method stub
    30         super.onCreate(savedInstanceState);
    31         setContentView(R.layout.activity01);
    32         gridview=(GridView) findViewById(R.id.gridView1);
    33         
    34         mData=new ArrayList<HashMap<String,Object>>();
    35         for(int i=0;i<images.length;i++){
    36             HashMap<String, Object> map=new HashMap<String, Object>();
    37             map.put("txt", "小白"+i);
    38             map.put("image", images[i]);
    39             mData.add(map);
    40         }
    41         
    42         adapter=new SimpleAdapter(this, mData, R.layout.itemview1, 
    43                 new String[]{"txt","image"}, new int[]{R.id.textView1,R.id.iv_avator});
    44         
    45         gridview.setAdapter(adapter);
    46     }
    47 }
    主界面

    /gridView/res/layout/activity01.xml

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent"
     5     android:orientation="vertical" >
     6 
     7     <GridView 
     8         android:id="@+id/gridView1"
     9         android:layout_width="match_parent"
    10         android:layout_height="match_parent"
    11         android:numColumns="3"
    12         ></GridView>
    13 
    14 </LinearLayout>
    创建GridView控件

    /gridView/res/layout/itemview1.xml

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent"
     5     android:gravity="center_horizontal"
     6     android:orientation="vertical" >
     7 
     8     <ImageView
     9         android:id="@+id/iv_avator"
    10         android:layout_width="wrap_content"
    11         android:layout_height="wrap_content"
    12         android:src="@drawable/image1" />
    13     
    14     <TextView 
    15         android:id="@+id/textView1"
    16         android:layout_width="wrap_content"
    17         android:layout_height="wrap_content"
    18         android:text="小白"
    19         />
    20 
    21 </LinearLayout>
    创建数据项容器
  • 相关阅读:
    CSS3 @fontface实现颜色大小可控的三角效果
    html5 canvas之绘制曲线
    li内文字超出隐藏,不允许出现半汉字截断,超出后仍显示new图片,小于宽度自动跟随
    告别图片—使用字符实现兼容性的圆角尖角效果beta版
    常用JQuery插件整理
    获取不到header的自定义参数的值
    mavenresourcesproduction:xxxx: java.lang.NegativeArraySizeException
    Cannot find module '@babel/core'
    C# Set集合
    关于tomcat部署web服务方式
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/7438066.html
Copyright © 2020-2023  润新知