activity_main.xml:

  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2. xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
  3. android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
  4. android:paddingRight="@dimen/activity_horizontal_margin"
  5. android:paddingTop="@dimen/activity_vertical_margin"
  6. android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
  7. <GridView
  8. android:layout_width="wrap_content"
  9. android:layout_height="wrap_content"
  10. android:id="@+id/gridView"
  11. android:numColumns="2"
  12. android:horizontalSpacing="1dp"
  13. android:verticalSpacing="5dp"
  14. android:layout_alignParentLeft="true"
  15. android:layout_alignParentStart="true"
  16. android:layout_marginTop="146dp" />
  17. </RelativeLayout>

然后,我们来设置数据源(用来填充GridView的)。首先在values下创建一个xml文件,命名为array.xml,内容例如以下:

  1. <?
  2. xml version="1.0" encoding="utf-8"?
  3. >
  4. <resources>
  5. <!-- 热门城市 -->
  6. <string-array name="hot_city">
  7. <item>北京</item>
  8. <item>上海</item>
  9. <item>广州</item>
  10. <item>深圳</item>
  11. <item>杭州</item>
  12. <item>成都</item>
  13. </string-array>
  14. </resources>

MainActivity.java:

  1. package com.example.gridview;
  2. import android.support.v7.app.ActionBarActivity;
  3. import android.os.Bundle;
  4. import android.view.Menu;
  5. import android.view.MenuItem;
  6. import android.widget.ArrayAdapter;
  7. import android.widget.GridView;
  8. public class MainActivity extends ActionBarActivity {
  9. private ArrayAdapter<String> mAdapterHot;
  10. private GridView gv;
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_main);
  15. gv = (GridView) findViewById(R.id.gridView);
  16. //第一个參数是context,第二个參数是GridView中item的布局文件,第三个參数是数据源
  17. mAdapterHot = new ArrayAdapter<String>(MainActivity.this, R.layout.text_item, getResources().getStringArray(R.array.hot_city));
  18. gv.setAdapter(mAdapterHot);
  19. }
  20. }

text_item.xml:

  1. <?xml version="1.0" encoding="utf-8"?
  2. >
  3. <TextView
  4. xmlns:android="http://schemas.android.com/apk/res/android"
  5. android:id="@+id/myCheckedTextView1"
  6. android:layout_width="80dp"
  7. android:layout_height="35dp"
  8. android:textColor="#a99a8a"
  9. android:textSize="16dp"
  10. android:text="aaaaa"
  11. android:background="#88aa99"
  12. android:gravity="center"
  13. android:paddingLeft="6dip"
  14. />

GridView与ArrayAdapter的结合的更多相关文章

  1. Android 菜单定制使用小结

    GridView 添加 ArrayAdapter<Bean>, 在 gridView 的 Item 点击之后, 1.list.add(bean)/remove(bean) 2.adapte ...

  2. 成为Android高手必须掌握的28大项内容和10个建议

    (一)成为Android高手必须掌握的8项基本要求 [1] Android操作系统概述1. Android系统架构.           2. Android利用设计理念.           3. ...

  3. 关于Layouts的分类

    ViewGroup ---------------------------------LinearLayout.Relative Layout. AdapterView --------------- ...

  4. Android 开发 系统组件集合

    常用的TextView.Button.ImageView和几个常用布局就不介绍了,我们介绍一些特别好用但是常常忘记的组件. 标题栏组件 <androidx.appcompat.widget.To ...

  5. 成为Android高手必须掌握的8项基本要求

    [1] Android操作系统概述 1. Android系统架构. 2. Android利用设计理念. 3. Android 开源知识. 4. Android 参考网站与权威信息.[2] Androi ...

  6. Android应用项目中BaseAdapter、SimpleAdapter和ArrayAdapter中的三种适配器

    一.写在前面: 本次我们来讲解一下Android应用中三个适配器:BaseAdapter.SimpleAdapter和ArrayAdapter.其中常见的是BaseAdapter,也是个人推荐使用的适 ...

  7. LruCache为GridView异步加载大量网络图片

    MainActivity如下: import android.os.Bundle; import android.widget.GridView; import android.app.Activit ...

  8. 【转载】 Android PullToRefresh (ListView GridView 下拉刷新) 使用详解

    Android下拉刷新pullToRefreshListViewGridView 转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/3 ...

  9. 利用LruCache为GridView异步加载大量网络图片完整示例

    MainActivity如下: package cc.testlrucache; import android.os.Bundle; import android.widget.GridView; i ...

随机推荐

  1. 什么是string interning(字符串驻留)以及python中字符串的intern机制

    Incomputer science, string interning is a method of storing only onecopy of each distinct string val ...

  2. SQL Server字符串分割函数

  3. .Net 扩展的使用

    Product.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; name ...

  4. 56.ERR! configure error gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.

    Node.js 在安装模块的时候报错,缺少python环境. ERR! configure error gyp ERR! stack Error: Can't find Python executab ...

  5. POJ 2455 二分+网络流

    题意: 思路: 莫名其妙TLE 啊woc我A了一坨题的网络流模板有问题 !!!! 在常数上会慢 (一个等于号 啊啊啊) 改了所有网络流有关的文章- .... //By SiriusRen #inclu ...

  6. POJ 3051 DFS

    题意:判断连通块大小 水题 //By SiriusRen #include <cstdio> #include <cstring> #include <algorithm ...

  7. OpenCV特征点检测——ORB特征

            ORB算法 目录(?)[+] 什么是ORB 如何解决旋转不变性 如何解决对噪声敏感的问题 关于尺度不变性 关于计算速度 关于性能 Related posts 什么是ORB 七 4 Ye ...

  8. Token ,Cookie和Session的区别--学习笔记

    http://blog.csdn.net/tobetheender/article/details/52485948 Token token的意思是“令牌”,是用户身份的验证方式,最简单的token组 ...

  9. Gym 100952 A. Who is the winner?

    A. Who is the winner? time limit per test 1 second memory limit per test 64 megabytes input standard ...

  10. 搭建并配置本地GitLab服务器教程

    由于工作单位不一定能够方便使用外部网络,现以下载rpm包来搭建一套本地GitLab服务器. 1. 系统准备 系统:redhat 7.3 2. 下载所需安装包 去官网下rpm包,下载地址,ce是免费的社 ...