博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
GridView九宫格菜单实现方式
阅读量:5257 次
发布时间:2019-06-14

本文共 3371 字,大约阅读时间需要 11 分钟。

  1. <?xml version="1.0" encoding="utf-8"?>  
  2.   
  3. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  4.     android:layout_width="fill_parent"   
  5.     android:layout_height="fill_parent">  
  6.     <GridView xmlns:android="http://schemas.android.com/apk/res/android"  
  7.         android:id="@+id/MyGridView"   
  8.         android:layout_alignParentTop="true"  
  9.         android:layout_width="fill_parent"   
  10.         android:layout_height="wrap_content"  
  11.         android:layout_marginTop="50dp"  
  12.         android:columnWidth="90dp"   
  13.         android:stretchMode="columnWidth"  
  14.         android:numColumns="auto_fit"   
  15.         android:horizontalSpacing="10dp"  
  16.         android:verticalSpacing="10dp"   
  17.         android:gravity="center">  
  18.     </GridView>  
  19.     <TextView android:id="@+id/MyTextView"  
  20.         android:layout_alignParentBottom="true"   
  21.         android:layout_width="fill_parent"  
  22.         android:layout_height="wrap_content"   
  23.         android:textStyle="bold"  
  24.         android:text="基于GridView的菜单"  
  25.         android:textColor="@android:color/white"   
  26.         android:gravity="center" />  
  27. </RelativeLayout>  
  28. res/layout/item.xml
    1. <?xml version="1.0" encoding="utf-8"?>  
    2. <LinearLayout  
    3.   xmlns:android="http://schemas.android.com/apk/res/android"  
    4.   android:orientation="vertical"  
    5.   android:layout_width="fill_parent"  
    6.   android:layout_height="wrap_content">  
    7.     <ImageView   
    8.         android:id="@+id/ItemImageView"  
    9.         android:layout_width="fill_parent"  
    10.         android:layout_height="wrap_content"  
    11.         android:layout_gravity="center"/>  
    12.     <TextView  
    13.         android:id="@+id/ItemTextView"   
    14.         android:layout_width="fill_parent"  
    15.         android:layout_height="wrap_content"  
    16.         android:gravity="center"/>  
    17. </LinearLayout>  

    GridViewTestActivity.java

  29. [java]
     
     
    1. package com.zeph.android.gridview;  
    2.   
    3. import java.util.ArrayList;  
    4. import java.util.HashMap;  
    5. import java.util.List;  
    6.   
    7. import android.app.Activity;  
    8. import android.os.Bundle;  
    9. import android.view.View;  
    10. import android.widget.AdapterView;  
    11. import android.widget.AdapterView.OnItemClickListener;  
    12. import android.widget.GridView;  
    13. import android.widget.SimpleAdapter;  
    14. import android.widget.Toast;  
    15.   
    16. public class GridViewTestActivity extends Activity {  
    17.     private GridView mGridView;  
    18.     private int[] imageRes = { R.drawable.png1, R.drawable.png2,  
    19.             R.drawable.png3, R.drawable.png4, R.drawable.png5, R.drawable.png6,  
    20.             R.drawable.png7, R.drawable.png8, R.drawable.png9 };  
    21.     private String[] itemName = { "PNG1", "PNG2", "PNG3", "PNG4", "PNG5",  
    22.             "PNG6", "PNG7", "PNG8", "PNG9" };  
    23.   
    24.     @Override  
    25.     public void onCreate(Bundle savedInstanceState) {  
    26.         super.onCreate(savedInstanceState);  
    27.         setContentView(R.layout.main);  
    28.         mGridView = (GridView) findViewById(R.id.MyGridView);  
    29.         List<HashMap<String, Object>> data = new ArrayList<HashMap<String, Object>>();  
    30.         int length = imageRes.length;  
    31.         for (int i = 0; i < length; i++) {  
    32.             HashMap<String, Object> map = new HashMap<String, Object>();  
    33.             map.put("ItemImageView", imageRes[i]);  
    34.             map.put("ItemTextView", itemName[i]);  
    35.             data.add(map);  
    36.         }  
    37.         SimpleAdapter mSimpleAdapter = new SimpleAdapter(  
    38.                 GridViewTestActivity.this, data, R.layout.item, new String[] {  
    39.                         "ItemImageView", "ItemTextView" }, new int[] {  
    40.                         R.id.ItemImageView, R.id.ItemTextView });  
    41.         mGridView.setAdapter(mSimpleAdapter);  
    42.         mGridView.setOnItemClickListener(new GridViewItemOnClick());  
    43.     }  
    44.   
    45.     public class GridViewItemOnClick implements OnItemClickListener {  
    46.   
    47.         @Override  
    48.         public void onItemClick(AdapterView<?> parent, View view, int position,  
    49.                 long id) {  
    50.             Toast.makeText(getApplicationContext(), position + "",  
    51.                     Toast.LENGTH_SHORT).show();  
    52.         }  
    53.   
    54.     }  
    55. }  
            1. 摘自http://blog.csdn.net/benweizhu/article/details/6737062

转载于:https://www.cnblogs.com/weixuexi/p/4691570.html

你可能感兴趣的文章
h.264 Mode Decision
查看>>
面向对象进阶(反射)
查看>>
《基于B/S中小型超市进销存管理系统的研究与设计》论文笔记(十六)
查看>>
第四周学习总结
查看>>
Dynamics 365中的批量删除作业执行频率可以高于每天一次吗?
查看>>
HDU-4734 F(x)数位dp
查看>>
玩NOILinux
查看>>
docker--container
查看>>
Linux知识扩展二:lsof命令
查看>>
【算法与数据结构】二叉搜索树的Java实现
查看>>
1.3分布式-分布式通讯(序列化)
查看>>
使用JavaScript代码实现各种数据控件的反选功能,不要只做拖控件的菜鸟
查看>>
tcp窗口
查看>>
主数据0
查看>>
HDU2001
查看>>
sql三维数据
查看>>
XTABLE学习笔记
查看>>
Hashset
查看>>
积累一点ctf需要掌握的常见脚本知识
查看>>
学用MVC4做网站一:用户注册1.1
查看>>