Android 自定义GridView六宫格
来源:互联网 发布:战术无线通信与网络 编辑:程序博客网 时间:2024/06/05 19:56
1、gridview的item布局:grid.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/theme_bg_normal" android:padding="10dp"> <ImageView android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center"/> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center"/></LinearLayout>
2、gridview布局:gridview.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="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context="com.example.shaolin.myapplication.GridViewActivity"> <GridView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@color/theme_bg" android:id="@+id/gridView" android:layout_gravity="center_vertical" android:numColumns="auto_fit" android:verticalSpacing="1dp" android:horizontalSpacing="1dp" android:columnWidth="90dp" android:stretchMode="columnWidth" android:gravity="center"/></LinearLayout>
3、例子:GridView.java
package com.example.shaolin.myapplication;import android.support.v7.app.ActionBarActivity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.widget.AdapterView;import android.widget.GridView;import android.widget.ListView;import android.widget.SimpleAdapter;import java.util.ArrayList;import java.util.HashMap;public class GridViewActivity extends ActionBarActivity { private GridView gridView; private int[] image={ R.mipmap.xinshou, R.mipmap.renwu, R.mipmap.paihang, R.mipmap.huodong, R.mipmap.choujiang, R.mipmap.xinxi, }; private String[] text={"新手", "任务" , "排行", "活动" ,"抽奖", "信息"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_grid_view); gridView= (GridView) findViewById(R.id.gridView); ArrayList<HashMap<String, Object>> list=new ArrayList<HashMap<String,Object>>(); for(int i=0;i<image.length;i++) { HashMap<String, Object> map = new HashMap<String, Object>(); map.put("ItemImage", image[i]);//添加图像资源的ID map.put("itemtext", text[i]); list.add(map); } //生成适配器的ImageItem <====> 动态数组的元素,两者一一对应 SimpleAdapter adapter=new SimpleAdapter(this, //数据来源 list,R.layout.grid,//XML实现 new String[]{"ItemImage","itemtext"}, //动态数组与ImageItem对应的子项 new int[]{R.id.imageView,R.id.textView}// //ImageItem的XML文件里面的一个ImageView,两个TextView ID ); //添加并且显示 gridView.setAdapter(adapter); //添加消息处理 gridView.setOnItemClickListener(clickListener); } private AdapterView.OnItemClickListener clickListener=new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) { HashMap<String, Object> item=(HashMap<String, Object>)arg0.getItemAtPosition(arg2); setTitle((String)item.get("itemtext")); } };}
0 0
- Android 自定义GridView六宫格
- Android GridView控件自定义
- Android GridView自定义Adapter
- Android--自定义GridView/ListView数据源
- Android GridView控件分页自定义
- Android GridView控件分页自定义
- Android自定义Dialog显示GridView
- Android 自定义ListView和GridView
- Android 自定义GridView添加网格线
- Android开发之:自定义GridView
- Android控件之GridView自定义
- Android自定义view01-ScrollView嵌套GridView
- Android自定义带分割线的GridView
- 自定义GridView
- 自定义gridview
- 自定义gridview
- 自定义GridView
- 自定义GridView
- HTML5中的canvas详述
- 角点检测(Harris,Fast,surf)
- fragment的回退总结
- Java FileInputStream/FileOutputStream的应用 文件读取和写入
- 鼠标放到图片上实现动态的效果
- Android 自定义GridView六宫格
- Mongdo的基本操作
- android与js交互(二)
- Generate Parentheses
- iOS项目开发实战——通过Http Post方式与服务器通信
- 字符输入,输出问题
- JAVA并发编程
- spring component-scan 包扫描
- 【CCCF专题】深度学习在自然语言处理中的应用