Adapter类型控件之GirdView(网格布局)
来源:互联网 发布:java基础入门视频教程 编辑:程序博客网 时间:2024/06/06 19:28
(一)概述
(二)相关属性
(三)使用案例
实现效果图:
代码实现:
GirdView中items.xml
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="5dp"> <ImageView android:id="@+id/img_icon" android:layout_width="64dp" android:layout_height="64dp" android:layout_centerInParent="true" android:src="@drawable/address_book" /> <TextView android:id="@+id/txt_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/img_icon" android:layout_centerHorizontal="true" android:layout_marginTop="30dp" android:text="哈哈" android:textSize="18sp" /></RelativeLayout>
public class Icon { private int iId; private String iName; public Icon() { } public Icon(int iId, String iName) { this.iId = iId; this.iName = iName; } public int getiId() { return iId; } public String getiName() { return iName; } public void setiId(int iId) { this.iId = iId; } public void setiName(String iName) { this.iName = iName; }}
MainActivity的布局文件跟java代码:
<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" android:padding="5dp" tools:context=".MainActivity"> <!--numColumns设置每行显示多少个--> <GridView android:id="@+id/grid_photo" android:layout_width="match_parent" android:layout_height="match_parent" android:numColumns="3" /></RelativeLayout>
public class MainActivity extends Activity { private Context mContext; private GridView grid_photo; private BaseAdapter mAdapter = null; private ArrayList<Icon> mData = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mContext = MainActivity.this; grid_photo = (GridView) findViewById(R.id.grid_photo); mData = new ArrayList<Icon>(); mData.add(new Icon(R.drawable.calendar, "图标1")); mData.add(new Icon(R.drawable.camera, "图标2")); mData.add(new Icon(R.drawable.clock, "图标3")); mData.add(new Icon(R.drawable.games_control, "图标4")); mData.add(new Icon(R.drawable.messenger, "图标5")); mData.add(new Icon(R.drawable.ringtone, "图标6")); mData.add(new Icon(R.drawable.settings, "图标7")); mAdapter = new MyAdapter<Icon>(mData, R.layout.item_grid_icon) { @Override public void bindView(ViewHolder holder, Icon obj) { holder.setImageResource(R.id.img_icon, obj.getiId()); holder.setText(R.id.txt_icon, obj.getiName()); } }; grid_photo.setAdapter(mAdapter); grid_photo .setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(mContext, "你点击了~" + position + "~项", Toast.LENGTH_SHORT).show(); } }); }}
。
<完>
1 0
- Adapter类型控件之GirdView(网格布局)
- Android网格布局(GirdView)学习
- Adapter类型控件之ListView Item多布局的实现
- android-UI组件实例大全(九)------Adapter类Three之GirdView网格视图
- Adapter类型控件之Adapter(数据适配器)
- Adapter类型控件之ListView(列表控件)
- Adapter类型控件之BaseAdapter(基础适配器)优化
- Adapter类型控件之Spinner(列表选项框)
- Android UI之GridLayout(网格布局)
- bootstrap之网格布局
- Android 图片网格布局控件
- Layout布局之网格布局
- (五)Android布局之网格布局(GridLayout)
- Adapter类型控件之ListView的焦点问题
- Adapter类型控件之ListView的checkbox错位问题解决方法
- Adapter类型控件之ListView的数据更新问题
- Adapter类型控件之构建一个可复用的自定义BaseAdapter
- java 之网格布局管理器;
- android内存优化系列之一基础篇
- Gray Code
- Android开源框架Universal-Image-Loader基本介绍及使用
- 键入service iptables status/start/restart无任何反应
- Java设计模式——模板模式
- Adapter类型控件之GirdView(网格布局)
- C++学习之vector容器笔记
- [leetcode] 367. Valid Perfect Square 解题报告
- git github gitlab是什么关系
- 存储-对象存储、文件存储和块存储
- 关于安卓请求服务器的session问题
- java 生成MAC校验码问题
- Ubuntu 安装python 2.7.11
- PPP,PPPoE,PPTP,L2TP-VPN简介