Android基础篇之底部菜单栏的编辑

来源:互联网 发布:中国人歧视中国人知乎 编辑:程序博客网 时间:2024/05/16 07:23

先看效果图: 如下

 

下面是代码部分:

1. 在main.xml中添加GridView

 

[xhtml] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:background="@drawable/background"  
  4.     android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent"  
  6.     >  
  7.     <GridView  
  8.         android:id="@+id/grid_view"  
  9.         android:layout_width="fill_parent"  
  10.         android:layout_height="wrap_content"  
  11.         android:layout_alignParentBottom="true"  
  12.         android:numColumns="5"  
  13.         android:horizontalSpacing="10dp"  
  14.         android:verticalSpacing="10dp">  
  15.     </GridView>  
  16. </RelativeLayout>  

 

2.注意:菜单栏中的每一子项都需要一个布局文件

 

 

如上图 是一个垂直布局的LinearLayout

 

menu_item.xml

 

[xhtml] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.   android:orientation="vertical"  
  4.   android:layout_width="wrap_content"  
  5.   android:layout_height="wrap_content">  
  6.   <ImageView  
  7.     android:id="@+id/item_iamge"  
  8.     android:layout_width="wrap_content"  
  9.     android:layout_height="wrap_content"  
  10.     android:layout_gravity="center_horizontal"  
  11.     />  
  12.   <TextView  
  13.     android:id="@+id/item_text"  
  14.     android:layout_width="wrap_content"  
  15.     android:layout_height="wrap_content"  
  16.     android:layout_gravity="center_horizontal"/>  
  17. </LinearLayout>  

 

3.主要代码部分  MainActivity.java

 

[java] view plaincopy
  1. package com.yin.bottom_menu;  
  2. import java.util.ArrayList;  
  3. import java.util.HashMap;  
  4. import android.app.Activity;  
  5. import android.os.Bundle;  
  6. import android.widget.GridView;  
  7. import android.widget.SimpleAdapter;  
  8. public class MainActivity extends Activity {  
  9.     //图片资源  
  10.     private static int[] images = {  
  11.         R.drawable.menu_add_new,  
  12.         R.drawable.menu_delete,  
  13.         R.drawable.menu_exit,  
  14.         R.drawable.menu_search,  
  15.         R.drawable.menu__list  
  16.     };  
  17.     //菜单栏中的文字显示  
  18.     private static String[] menu_texts = {  
  19.         "增加","删除","退出","查找","菜单"  
  20.     };  
  21.       
  22.     private ArrayList<HashMap<String,Object>> menu_data ;  
  23.       
  24.     private GridView grid_view;  
  25.       
  26.     public void onCreate(Bundle savedInstanceState) {  
  27.         super.onCreate(savedInstanceState);  
  28.         setContentView(R.layout.main);  
  29.           
  30.         init_menu();  
  31.     }  
  32.     //初始化底部菜单栏  
  33.     private void init_menu(){  
  34.         grid_view = (GridView) findViewById(R.id.grid_view);  
  35.           
  36.         add_menu_data();  
  37.           
  38.         //向菜单栏中的控件添加适配其  
  39.         SimpleAdapter adapter = new SimpleAdapter(this, menu_data, R.layout.menu_item,  
  40.                 new String[]{"menu_image","menu_text"}, new int[]{R.id.item_iamge,R.id.item_text});  
  41.           
  42.         grid_view.setAdapter(adapter);  
  43.     }  
  44.     //添加菜单栏中显示的数据  
  45.     private void add_menu_data(){  
  46.         menu_data = new ArrayList<HashMap<String,Object>>();  
  47.         for(int i=0;i<images.length;i++){  
  48.             HashMap<String,Object> map = new HashMap<String, Object>();  
  49.             map.put("menu_image", images[i]);  
  50.             map.put("menu_text", menu_texts[i]);  
  51.             menu_data.add(map);  
  52.         }  
  53.     }  
  54. }  

 

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 在家里放的东西找不到了怎么办 在家里烧东西烟太大了怎么办 转转上买的二手东西有问题怎么办? 大巴车过虎门大桥错走小车道怎么办 pe高压膜中间松两边紧怎么办? 穿着浅口的高跟鞋走路老是掉怎么办 五吧同城模特兼职被骗了怎么办 华为手机充电玩黑屏怎么办教学视频 衣服肩膀被衣架撑变形了怎么办 货已经安到客户家客户不付款怎么办 微商卖家不给退货不给换货怎么办啊 淘宝卖家已签收退货却不退款怎么办 申请换货卖家收到货不给换怎么办 我买了个机器想退货怎么办 卖家要求退回去又拒收怎么办 拼多多48小时还不发货怎么办 退货退款单号填错了退不了款怎么办 淘宝退货退款快递单号填写错怎么办 蘑菇街退货忘记填快递单号了怎么办 您尝试购买的项目已停止供货怎么办 oppo新手机搬家搬了一半怎么办 开手机店手机卖不出去怎么办 京东买的东西误按签收了怎么办 小米5x充电宝充电自动断电怎么办 小米2s开不了机怎么办充电闪红灯 寄快递写错地址但已经发货了怎么办 拼多多发货时快递公司写错了怎么办 千牛发货信息写错了怎么办 发货物流单电话写错了怎么办 顺丰寄电脑保价后电脑进水了怎么办 微销通分享小程序没有二维码怎么办 京东的东西退掉但是赠品怎么办 买手机7天不给退换怎么办 买的水果拒收了商家不退钱怎么办 京东第三方签收后退货怎么办 京东上买的第三方的鞋子退货怎么办 淘宝买家退货条码不符签收了怎么办 此苹果已丢失并被抹掉怎么办 苹果手机显示已丢失并被抹掉怎么办 手机在保修期内坏了售后拖延怎么办 微信图片在电脑上打印不清楚怎么办