gridview例子
直接贴代码
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例子的更多相关文章
- android官方开源的高性能异步加载网络图片的Gridview例子
这个是我在安卓安卓巴士上看到的资料,放到这儿共享下.这个例子android官方提供的,其中讲解了如何异步加载网络图片,以及在gridview中高效率的显示图片此代码很好的解决了加载大量图片时,报OOM ...
- 使用LINQ TO XML 创建xml文档,以及读取xml文档把内容显示到GridView例子
首先,准备了一个Model类 using System; using System.Collections.Generic; using System.Linq; using System.Text; ...
- 【转】 Pro Android学习笔记(二二):用户界面和控制(10):自定义Adapter
目录(?)[-] 设计Adapter的布局 代码部分 Activity的代码 MyAdapter的代码数据源和构造函数 MyAdapter的代码实现自定义的adapter MyAdapter的代码继续 ...
- 一个在ASP.NET中利用服务器控件GridView实现数据增删改查的例子
备注:这是我辅导的一个项目开发组的一个例子,用文章的方式分享出来,给更多的朋友参考.其实我们这几年的项目中,都不怎么使用服务器控件的形式了,而是更多的采用MVC这种开发模式.但是,如果项目的历史背景是 ...
- 在GridView中实现全选反选的例子
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GridView控件.asp ...
- 【初学者指南】在ASP.NET MVC 5中创建GridView
介绍 在这篇文章中,我们将会学习如何在 ASP.NET MVC 中创建一个 gridview,就像 ASP.NET Web 表单中的 gridview 一样.服务器端和客户端有许多可用的第三方库,这些 ...
- android 在 ListView 的 item 中插入 GridView 仿微信朋友圈图片显示。
转载请声明出处(http://www.cnblogs.com/linguanh/) 先上张效果图: 1,思路简述 这个肯定是要重写 baseAdapter的了,这里我分了两个数据适配器,一个是自定义的 ...
- 实现CheckBox的三种选中状态(全选、半选、不选)在GridView中模拟树形的功能
度娘了很多帖子,只说三种状态要用图片替换来做,但没找到有用的例子,被逼自己写了一个 三方控件肯定是很多的,如jstree,可以直接用 由于公司的UDS限制,不能上传图片,只能文字说明了. 就是要在gr ...
- android 之 ListView 里面嵌套 GridView 遇到的问题及其解决方法。
我们直接入主题.所有问题例子请参照下图 1,怎样使图片具有点击事件? 答: 解决方法: 在你的BaseAdapter里面不要设置下面这三个东西,然后再设置GridView的onItemClick. g ...
随机推荐
- VIM键盘快捷键映射
http://www.jianshu.com/p/216811be226b
- 无法远程访问虚拟机中的EM (Oracle Enterprise Manager)
今天安装EM,因为文件系统采用ASM来控制,后面需要输入一些ASM相关的信息.这个ASMSNMP用户是新建,所以设个密码自己记下就行. Enter the following information: ...
- linux信号处理及libcurl的坑
前言: 最近有个项目, 需要访问第三方服务. 该服务是通过http的形式访问的, 为了安全和加密, 对方提供了一个加密用的C/C++库, 用于对参数进行处理. 鉴于此, 选用了C/C++语言 ...
- Scrum第一天任务认领情况
在团队项目“广商百货”的SCRUM项目中我认领的任务是对登录注册界面进行完善.具体功能还没有实现,还在学习中...
- 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 ...
- HDU 2085 核反应堆 --- 简单递推
HDU 2085 核反应堆 /* HDU 2085 核反应堆 --- 简单递推 */ #include <cstdio> ; long long a[N], b[N]; //a表示高能质点 ...
- URAL 1085 Meeting(最短路)
Meeting Time limit: 2.0 secondMemory limit: 64 MB K friends has decided to meet in order to celebrat ...
- 15款Chrome浏览器插件让设计师告别拖延症
秋高气爽,分享一大波有效帮助设计师提高工作效率的Chrome浏览器扩展程序! 高效是另一种王道 无论是在工作中,还是在生活中,有些词我们说来就满满正能量,而另外一些话提起就很沮丧,后者如拖延症,前者如 ...
- 图中最短路径算法(Dijkstra算法)(转)
1.Dijkstra 1) 适用条件&范围: a) 单源最短路径(从源点s到其它所有顶点v); b) 有向图&无向图(无向图可以看作(u,v),(v,u)同属于边集E ...
- Android开源项目第一篇——个性化控件(View)篇
本文为那些不错的Android开源项目第一篇——个性化控件(View)篇,主要介绍Android上那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Ga ...