Android:控件GridView的使用实例

Android:控件GridView的使用实例,第1张

概述如果是列表(单列多行形式)的使用ListView,如果是多行多列网状形式的优先使用GridView。

如果是列表(单列多行形式)的使用ListVIEw,如果是多行多列网状形式的优先使用GrIDVIEw。

<?xml version="1.0" enCoding="utf-8"?><GrIDVIEw xmlns:androID="http://schemas.androID.com/apk/res/androID"  androID:layout_wIDth="match_parent"  androID:layout_height="match_parent" >  </GrIDVIEw>

GirdVIEw的一些属性:

androID:numColumns="auto_fit" --------列数设置为自动 androID:columnWIDth="90dp",----------每列的宽度,也就是Item的宽度 androID:stretchMode="columnWIDth"------缩放与列宽大小同步 androID:verticalSpacing="10dp"----------垂直边距 androID:horizontalSpacing="10dp"-------水平边距

1、准备数据源

2、新建适配器

3、加载适配器

GrIDVIEw(网格视图)是按照行列的方式来显示内容的,一般用于显示图片,图片等内容,比如实现九宫格图,用GrIDVIEw是首选,也是最简单的,下面来个实例

实例下载:demo

效果图:

MainActivity.java

package com.example.testgrIDvIEw;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import androID.app.Activity;import androID.os.Bundle;import androID.Widget.GrIDVIEw;import androID.Widget.SimpleAdapter;public class MainActivity extends Activity {  private GrIDVIEw gvIEw;  private List<Map<String,Object>> data_List;  private SimpleAdapter sim_adapter;  // 图片封装为一个数组  private int[] icon = { R.drawable.address_book,R.drawable.calendar,R.drawable.camera,R.drawable.clock,R.drawable.games_control,R.drawable.messenger,R.drawable.ringtone,R.drawable.settings,R.drawable.speech_balloon,R.drawable.weather,R.drawable.world,R.drawable.youtube };  private String[] iconname = { "通讯录","日历","照相机","时钟","游戏","短信","铃声","设置","语音","天气","浏览器","视频" };  @OverrIDe  protected voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.test);    gvIEw = (GrIDVIEw) findVIEwByID(R.ID.gvIEw);    //新建List    data_List = new ArrayList<Map<String,Object>>();    //获取数据    getData();    //新建适配器    String [] from ={"image","text"};    int [] to = {R.ID.image,R.ID.text};    sim_adapter = new SimpleAdapter(this,data_List,R.layout.item,from,to);    //配置适配器    gvIEw.setAdapter(sim_adapter);  }      public List<Map<String,Object>> getData(){        //cion和iconname的长度是相同的,这里任选其一都可以    for(int i=0;i<icon.length;i++){      Map<String,Object> map = new HashMap<String,Object>();      map.put("image",icon[i]);      map.put("text",iconname[i]);      data_List.add(map);    }          return data_List;  }  }

test.xml

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"  androID:layout_wIDth="match_parent"  androID:layout_height="match_parent"  androID:orIEntation="vertical"   androID:background="#000"  >  <GrIDVIEw     androID:ID="@+ID/gvIEw"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    androID:numColumns="auto_fit"      androID:columnWIDth="80dp"    androID:stretchMode="columnWIDth"    ></GrIDVIEw></linearLayout>

item.xml

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"  androID:layout_wIDth="wrap_content"  androID:layout_height="wrap_content"  androID:orIEntation="vertical"   androID:gravity="center"  androID:padding="10dp"  >    <ImageVIEw   androID:src="@drawable/ic_launcher"  androID:ID="@+ID/image"  androID:layout_wIDth="60dp"  androID:layout_height="60dp"    /><TextVIEw   androID:ID="@+ID/text"  androID:layout_margintop="5dp"  androID:layout_wIDth="wrap_content"  androID:layout_height="wrap_content"  androID:textcolor="#ffffff"  androID:text="文字"  /></linearLayout>

监听接口: onItemClickListener

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

总结

以上是内存溢出为你收集整理的Android:控件GridView的使用实例全部内容,希望文章能够帮你解决Android:控件GridView的使用实例所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1147547.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存