GridView 二维排布

与ListView一维排布相对

public class MainActivity extends AppCompatActivity {
    private GridView gv;
    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.youtube
    };
    private String[] name = {
            "address_book" , "calendar" , "camera" , "clock" ,"games_control",
            "messenger" ,"ringtone" , "settings" ,"youtube"
    };
    private List<Map<String,Object>> listdata;
    private SimpleAdapter sim_adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //注册控件
        gv = (GridView)findViewById(R.id.gridView);
        //数据源
        listdata = new ArrayList<Map<String,Object>>();

        //适配器
        sim_adapter = new SimpleAdapter(this,getData(),R.layout.buju,new String[]{"pic", "txt"},new int[]{R.id.pic,R.id.txt});

        //GridView与适配器绑定
        gv.setAdapter(sim_adapter);
    }

    private  List<Map<String,Object>> getData(){
        for(int i = 0 ; i < icon.length ; i++){
            Map<String,Object> map = new HashMap<String, Object>();
            map.put("pic",icon[i]);
            map.put("txt",name[i]);
            listdata.add(map);
        }
        return listdata;
    }

gridview 三个常用的属性
numcolumns :每一行显示多少列 列数 可以自动适配 auto_fit
horizontalspacing 两列之间的间距 其实翻译过来就是水平之间的距离 就是两列之间的距离
verticalspacing 行距 垂直之间的距离

时间: 2024-10-24 12:44:35

GridView 二维排布的相关文章

Android GridView 二维布局界面

GridView用于在界面上按行.列分布的方式来显示多个组件. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools= "http://schemas.android.com/tools" android:layout_width= "match_parent" android:layout_height= "mat

使用ZBarSDK生成和读取二维码

1.下载ZBarSDK,下载地址:http://zbar.sourceforge.net/iphone/index.html2.新建项目,导入ZBarSDK,并添加下列frameworkCoreMedia.frameworkCoreVideo.frameworkAVFoundation.frameworkQuartzCore.frameworklibiconv.dyliblibzbar.a3.扫瞄二维码(全屏)(1)在viewController界面导入头文件 #import"ZBarSDK.h

小白C#窗体系列-02.二维码生成器

今天是情人节,咳,男人们带着他们的男朋友们,女人带着她们的女朋友们愉快的逛着街.逆天也就不随大众了,就继续出C#小白系列的教程了~~~ 实在没空去录教程了,就看看文档吧,大家都知道的,录教程是比较花时间的,我不想草草了事,那是对大家和我自己的不负责,视频可以以后再录,不过软件和源码以及文档得先弄好,毕竟逆天不喜欢失信与自己~~ 废话不说了,开始我们的教程吧~ 软件下载(.NET 4.0 框架)http://pan.baidu.com/s/1i3BUVNv[源码看下面] 一.设计图纸: 二.代码分

HDU 4901 The Romantic Hero(二维dp)

题目大意:给你n个数字,然后分成两份,前边的一份里面的元素进行异或,后面的一份里面的元素进行与.分的时候按照给的先后数序取数,后面的里面的所有的元素的下标一定比前面的大.问你有多上种放元素的方法可以使得前面异或的值和后面与的值相等. dp[x][y] 表示走到第x步,得到y这个数字一共有多少种方法. 但是需要注意这里得分一下,不能直接用dp数组存种数,你需要分一下从上一层过来的次数,和这一层自己可以到达的次数.然后取和的时候前后两个集合的种数进行乘法,注意边乘边取余. 顺便给一组数据: 4 3

silverlight 生成二维码

MainPage.xaml 1 <Grid x:Name="LayoutRoot" Background="White"> 2 <Border BorderThickness="2" BorderBrush="Black" /> 3 <Grid ShowGridLines="True"> 4 <Grid.RowDefinitions> 5 <RowDef

一句话动态开辟二维数组

#include<iostream> using namespace std; //动态开辟int p[4][5]数组 void main() { //为了验证正确性,我们先把开辟的一维数组赋值给 pp int *pp=new int[20]; int i=0,j=0; for(i=0;i<20;i++)//为一维数组中每一个元素赋值,并输出该元素地址 { pp[i]=i; cout<<&(pp[i])<<" ";//即 pp+i }

Python的二维数组

Python一维数组初始化: >>> list=[] >>> type(list) <type 'list'> >>> list [] Python二维数组初始化: >>> lists = [[]] * 3 >>> lists [[], [], []] >>> lists[0].append(3) >>> lists [[3], [3], [3]] "[[]]

hoj_10014_二维DP

The Triangle Time Limit: 1000ms, Special Time Limit:2000ms, Memory Limit:32768KB Total submit users: 952, Accepted users: 860 Problem 10014 : No special judgement Problem description 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 (Figure 1) Figure 1 shows a number tr

XTU1168:Alice and Bob(二维DP)

摘要:Dota(Defence of the Ancients,远古的守护), 是指基于魔兽争霸3:冰封王座(暴雪娱乐公司出品)的多人即时对战自定义地图,可支持10个人同时连线游戏.Dota以对立的两个小队展开对战,通常是5v5,游戏目的是守护自己的远古遗迹(近卫方的生命之树.天灾方的冰封王座),同时摧毁对方的远古遗迹.DotA是目前唯一被暴雪娱乐公司官方认可的魔兽争霸RPG.Dota在大学生中的风靡程度令人咂舌,而随着玩家对游戏的理解深入,本身存在于游戏中的许多数学模型被挖掘出来进行研究.游戏