直接贴代码

MainActivity.java

public class MainActivity extends AppCompatActivity {

    private GridView _gridView = null;
private List<ObjectEntity> _dataSource = null; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); initGridView();
} private void initGridView() { _gridView = (GridView) findViewById(R.id.grid_view); _dataSource = new ArrayList<>(); for (int i = ; i < ; i++) {
ObjectEntity object = new ObjectEntity(); object.imgUrl = "http://a.hiphotos.baidu.com/album/w%3D2048/sign=3da6584ff2deb48ffb69a6dec4273b29/960a304e251f95ca11945098c8177f3e670952bf.jpg";
object.desc = "这是list描述信息"; _dataSource.add(object);
} MyAdapter listAdapter = new MyAdapter(_dataSource, this);
_gridView.setAdapter(listAdapter); _gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
ObjectEntity data = _dataSource.get(position); Toast.makeText(getApplicationContext(),
data.desc,
Toast.LENGTH_SHORT).show();
}
});
}
}

MyAdapter.java

package bbb.aaa.testgridview;

import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView; import java.util.List; public class MyAdapter extends BaseAdapter { private List<ObjectEntity> dataSourceArray;
private Context activityContext; public MyAdapter(List<ObjectEntity> dataSource, Context context) { this.dataSourceArray = dataSource;
this.activityContext = context;
} @Override
public int getCount() {
return this.dataSourceArray.size();
} @Override
public Object getItem(int position) {
return position;
} @Override
public long getItemId(int position) {
return position;
} @Override
public View getView(int position, View convertView, ViewGroup parent) { if ( null == convertView )
{
LayoutInflater inflater = ((Activity)activityContext).getLayoutInflater();
convertView = inflater.inflate(R.layout.gridview_item, null);
} ObjectEntity data = dataSourceArray.get(position); TextView info = (TextView)convertView.findViewById(R.id.gridview_text);
info.setText(data.desc); return convertView;
}
}

ObjectEntity.java

package bbb.aaa.testgridview;

public class ObjectEntity
{
public String imgUrl;
public String desc;
}

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"> <TextView
android:id="@+id/title_bar_text"
android:layout_width="match_parent"
android:layout_height="45dip"
android:layout_alignParentTop="true"
android:gravity="center_vertical|center_horizontal"
android:text=""
android:textSize="20dip"
android:textColor="#fff"/>
<GridView
android:id="@+id/grid_view"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/title_bar_text"
android:layout_marginLeft="1dip"
android:layout_marginRight="1dip"
android:numColumns=""
android:columnWidth="5dip"
android:cacheColorHint="#00000000"
></GridView> </RelativeLayout>

gridview_item.xml

<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="match_parent"
android:paddingLeft="1dp"
android:paddingRight="1dp"
android:paddingTop="1dp"
android:paddingBottom="1dp"
android:orientation="vertical"> <RelativeLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="80dp"> <TextView
android:id="@+id/gridview_text"
android:layout_width="fill_parent"
android:layout_height="80dp"
android:text="登录"
android:layout_alignParentTop="false"
android:layout_centerInParent="true"
android:gravity="center|center_vertical|center_horizontal"
android:textStyle="bold|normal"
android:textColor="@color/white_color"
android:textSize="10dp"
android:background="@color/clean_blue_color" />
</RelativeLayout>
</LinearLayout>

color.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="clean_blue_color">#21afe5</color>
<color name="test_blue_color">#</color>
<color name="white_color">#ffffff</color>
</resources>

gridview例子的更多相关文章

  1. android官方开源的高性能异步加载网络图片的Gridview例子

    这个是我在安卓安卓巴士上看到的资料,放到这儿共享下.这个例子android官方提供的,其中讲解了如何异步加载网络图片,以及在gridview中高效率的显示图片此代码很好的解决了加载大量图片时,报OOM ...

  2. 使用LINQ TO XML 创建xml文档,以及读取xml文档把内容显示到GridView例子

    首先,准备了一个Model类 using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

  3. 【转】 Pro Android学习笔记(二二):用户界面和控制(10):自定义Adapter

    目录(?)[-] 设计Adapter的布局 代码部分 Activity的代码 MyAdapter的代码数据源和构造函数 MyAdapter的代码实现自定义的adapter MyAdapter的代码继续 ...

  4. 一个在ASP.NET中利用服务器控件GridView实现数据增删改查的例子

    备注:这是我辅导的一个项目开发组的一个例子,用文章的方式分享出来,给更多的朋友参考.其实我们这几年的项目中,都不怎么使用服务器控件的形式了,而是更多的采用MVC这种开发模式.但是,如果项目的历史背景是 ...

  5. 在GridView中实现全选反选的例子

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GridView控件.asp ...

  6. 【初学者指南】在ASP.NET MVC 5中创建GridView

    介绍 在这篇文章中,我们将会学习如何在 ASP.NET MVC 中创建一个 gridview,就像 ASP.NET Web 表单中的 gridview 一样.服务器端和客户端有许多可用的第三方库,这些 ...

  7. android 在 ListView 的 item 中插入 GridView 仿微信朋友圈图片显示。

    转载请声明出处(http://www.cnblogs.com/linguanh/) 先上张效果图: 1,思路简述 这个肯定是要重写 baseAdapter的了,这里我分了两个数据适配器,一个是自定义的 ...

  8. 实现CheckBox的三种选中状态(全选、半选、不选)在GridView中模拟树形的功能

    度娘了很多帖子,只说三种状态要用图片替换来做,但没找到有用的例子,被逼自己写了一个 三方控件肯定是很多的,如jstree,可以直接用 由于公司的UDS限制,不能上传图片,只能文字说明了. 就是要在gr ...

  9. android 之 ListView 里面嵌套 GridView 遇到的问题及其解决方法。

    我们直接入主题.所有问题例子请参照下图 1,怎样使图片具有点击事件? 答: 解决方法: 在你的BaseAdapter里面不要设置下面这三个东西,然后再设置GridView的onItemClick. g ...

随机推荐

  1. VIM键盘快捷键映射

    http://www.jianshu.com/p/216811be226b

  2. 无法远程访问虚拟机中的EM (Oracle Enterprise Manager)

    今天安装EM,因为文件系统采用ASM来控制,后面需要输入一些ASM相关的信息.这个ASMSNMP用户是新建,所以设个密码自己记下就行. Enter the following information: ...

  3. linux信号处理及libcurl的坑

    前言:     最近有个项目, 需要访问第三方服务. 该服务是通过http的形式访问的, 为了安全和加密, 对方提供了一个加密用的C/C++库, 用于对参数进行处理.  鉴于此, 选用了C/C++语言 ...

  4. Scrum第一天任务认领情况

    在团队项目“广商百货”的SCRUM项目中我认领的任务是对登录注册界面进行完善.具体功能还没有实现,还在学习中...

  5. Codeforces Round #370 (Div. 2) A B C 水 模拟 贪心

    A. Memory and Crow time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  6. HDU 2085 核反应堆 --- 简单递推

    HDU 2085 核反应堆 /* HDU 2085 核反应堆 --- 简单递推 */ #include <cstdio> ; long long a[N], b[N]; //a表示高能质点 ...

  7. URAL 1085 Meeting(最短路)

    Meeting Time limit: 2.0 secondMemory limit: 64 MB K friends has decided to meet in order to celebrat ...

  8. 15款Chrome浏览器插件让设计师告别拖延症

    秋高气爽,分享一大波有效帮助设计师提高工作效率的Chrome浏览器扩展程序! 高效是另一种王道 无论是在工作中,还是在生活中,有些词我们说来就满满正能量,而另外一些话提起就很沮丧,后者如拖延症,前者如 ...

  9. 图中最短路径算法(Dijkstra算法)(转)

    1.Dijkstra 1)      适用条件&范围: a)   单源最短路径(从源点s到其它所有顶点v); b)   有向图&无向图(无向图可以看作(u,v),(v,u)同属于边集E ...

  10. Android开源项目第一篇——个性化控件(View)篇

    本文为那些不错的Android开源项目第一篇——个性化控件(View)篇,主要介绍Android上那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Ga ...