文档章节

选择菜单的 动 -- 静态创建

初来小修
 初来小修
发布于 2016/01/23 15:08
字数 511
阅读 12
收藏 0
 选择菜单的 动 -- 静态创建
 -- 静态创建一个菜单
1、在res里右击创建一个名为menu文件夹
2、在创建好的res/menu里创建一个android XML file 文件
3、里面布局需要的菜单名称
代码示例:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/user_set"
        android:title="用户设置"/>
    <item
        android:id="@+id/user_exit"
        android:title="用户退出"/>
   
    <item android:id="@+id/colour_set" android:title="颜色设置">
        <menu>
            <group>
                <item
                    android:id="@+id/colour_red"
                    android:title="红色"/>
                <item
                    android:id="@+id/colour_blue"
                    android:title="蓝色"/>
                <item
                    android:id="@+id/colour_green"
                    android:title="绿色"/>
            </group>
        </menu>
    </item>
    
     <item android:id="@+id/font_set" android:title="字体大小">
        <menu>
            <group>
                <item
                    android:id="@+id/font_30"
                    android:title="30sp"/>
                <item
                    android:id="@+id/font_40"
                    android:title="40sp"/>
                <item
                    android:id="@+id/font_50"
                    android:title="50sp"/>
            </group>
        </menu>
    </item>
</menu>
-----------------
4、在MainActivity 里重写onCreateOptionsMenu方法来静态创建一个刚刚布局好的选择菜单
代码
@Override//静态菜单重写的方法
  public boolean onCreateOptionsMenu(Menu menu) {
//用getMenuInflater().inflate方法来获取菜单的布局 进行静态创建一个布局好的菜单
//参数1 -- menu文件夹里的静态布局好的菜单名字
//参数2 -- ?
   getMenuInflater().inflate(R.menu.men_activity, menu);
   return super.onCreateOptionsMenu(menu);
  }
------------------
5、然后想 点击选中的静态菜单触发一些 事件就要 重写一个监听方法
代码
@Override
  public boolean onMenuItemSelected(int featureId, MenuItem item) {
  return super.onMenuItemSelected(featureId, item);
  }
该方法里放一些要点击时做的事件
==========================================================
 -- 动态创建一个菜单
//不需要再res/menu/文件夹里布局一个菜单 -- 可以通过代码来创建
//动态创建一个菜单也需要重写onCreateOptionsMenu方法
代码
//动态菜单
 @Override
  public boolean onCreateOptionsMenu(Menu menu) {
//利用menu.add方法来动态创建需要的菜单名
//Menu.add(int groupId, int itemId, int order, CharSequence title)
//第一个参数 -- 没有可以用Menu.NONE
//第二个参数 -- 显示的顺序
//第三个参数 -- ?
//第四个参数 -- 要创建的菜单名字
   menu.add(Menu.NONE, 1, Menu.NONE, "菜单1");
   menu.add(Menu.NONE, 2, Menu.NONE, "菜单2");
   menu.add(Menu.NONE, 3, Menu.NONE, "菜单3");
   return super.onCreateOptionsMenu(menu);
  }

© 著作权归作者所有

初来小修
粉丝 4
博文 117
码字总数 80711
作品 0
广州
私信 提问
[IBM DW] 使用 Dojo 开发菜单应用

背景介绍 菜单应用是 Web 页面的点睛之笔。当用户在浏览器端右键单击的时候,浏览器会弹出自带的菜单,显示如“查看源代码”、“复制”、“粘贴”等可用菜单栏。通过使用浏览器自带 的菜单,...

红薯
2010/10/19
1K
0
QMUI Web 前端框架正式发布

QMUI Web 官网:http://qmuiteam.com/web Github: https://github.com/QMUI/qmui_web QMUI Web 是一个专注 Web UI 开发,帮助开发者快速实现特定的一整套设计的框架。通过 QMUI Web,开发者可...

kayo5994
2016/08/04
5.1K
8
【随笔系列】C#使用第三方SharpZipLib进行压缩、解压文件

近在做项目时用到了文件的批量压缩下载,使用了第三方的SharpZipLib包,后来想到了单个文件的压缩与解压,可能以后会用到相关技术,所以自己熟悉了一下并且借鉴了一些网上的相关代码,自己整...

Harley520
2018/10/12
0
0
Storyboard 联线教程-在视图控制器间传递数据

首先,我们快速回顾一下我们已经完成的工作。之前,我们学习了使用Storyboards完成的一些工作: 将一个正常的视图控制器嵌入到导航控制器中; 创建了一个表视图,并填充了菜单列表; 使用联线...

三只脚的猪
2014/02/18
0
0
Android界面菜单(2)—选项菜单

选项菜单 Android 4.0 系统中,Activity在创建时便会调用 onCreateOptionMenu() 函数初始化自身的菜单系统。在Activity的整个生命周期中,选项菜单是一直被重复利用的,直到 Activity被销毁。...

iBazinga
2016/11/23
13
0

没有更多内容

加载失败,请刷新页面

加载更多

数据库

数据库架构 数据库架构可以分为存储文件系统和程序实例两大块,而程序实例根据不同的功能又可以分为如下小模块。 1550644570798 索引模块 常见的问题有: 为什么要使用索引 什么样的信息能成...

一只小青蛙
今天
5
0
PHP常用经典算法实现

<? //-------------------- // 基本数据结构算法 //-------------------- //二分查找(数组里查找某个元素) function bin_sch($array, $low, $high, $k){ if ( $low <= $high){ $mid = int......

半缘修道半缘君丶
昨天
5
0
GIL 已经被杀死了么?

本文原创并首发于公众号【Python猫】,未经授权,请勿转载。 原文地址:https://mp.weixin.qq.com/s/8KvQemz0SWq2hw-2aBPv2Q 花下猫语: Python 中最广为人诟病的一点,大概就是它的 GIL 了。...

豌豆花下猫
昨天
5
0
git commit message form

commit message一般包括3部分:Header、Body、Footer。 <type>(<scope>):<subject>blank line<body>blank line<footer> header是必需的,body、footer可以省略。 header中type、subject......

ninjaFrog
昨天
5
0
聊聊Elasticsearch的CircuitBreakerService

序 本文主要研究一下Elasticsearch的CircuitBreakerService CircuitBreakerService elasticsearch-7.0.1/server/src/main/java/org/elasticsearch/indices/breaker/CircuitBreakerService.ja......

go4it
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部