`
_小菜鸟
  • 浏览: 33913 次
社区版块
存档分类
最新评论

我的android 第18天 - 选择菜单

阅读更多

 

我的android 第18天 - 选择菜单

 

 介绍:菜单是在开发中常用的一个控件,它分为选择菜单和上下文菜单,可以通过菜单设计器实现菜单的设计,也可以通过代码手动装配菜单,一个Activity只能有一个选择菜单,但是可以有多个上下文菜单,一个控制只能拥有一个上下文菜单

 

 案例:通过选择菜单和上下文菜单实现对图书的管理

  (该项目涉及三个知识点:选择菜单、上下文菜单、自定义适配器)

一、界面设计及案例分析

 

 


 

 

 

   二、实现流程

1、构建选择菜单

•在菜单设计器设计选择菜单
•通过代码添加选择菜单
•groupId : 组别(不会影响菜单项的排序顺序)
•itemId : 菜单项的唯一标识
•order: 菜单项的排列顺序(数值越小,排在越前面)
•title:标题
•MenuItem item = menu.add(groupId, itemId, order, title); 创建菜单项
•item.setIcon(R.drawable.icon); 设置图标
•onCreateOptionsMenu :在第一次点击Menu的时候调用,在这里进行菜单的初始化
•getMenuInflater().inflate(R.menu.book, menu);装配菜单 

2、监听选择菜单项的点击:onOptionsItemSelected :Activity方法

 

/**
     * 第一次点击Menu键的时触发(在这里创建选择菜单)
     */
    public boolean onCreateOptionsMenu(Menumenu) {
    // 把功能类似的菜单项分到同组
   menu.add(0, R.id.menu_add, 0, R.string.add).setIcon(R.drawable.menu_add);
    menu.add(0, R.id.menu_delete, 0, R.string.delete).setIcon(R.drawable.menu_delete);
    menu.add(1, R.id.menu_good_look, 0, R.string.good_look).setIcon(R.drawable.menu_good_look);
    menu.add(1, R.id.menu_not_good_look, 0, R.string.not_good_look).setIcon(R.drawable.menu_not_good_look);
    // menu.setGroupEnabled(0,false);
//装配菜单
    getMenuInflater().inflate(R.menu.menu_book_options,menu);
    return super.onCreateOptionsMenu(menu);
    }
 /**
     * 监听选择菜单的点击     */
    public boolean onOptionsItemSelected(MenuItemitem) {
    int itemId = item.getItemId();
    switch (itemId) {
case R.id.menu_add: // 添加
menuEidtOrAdd(null);
break;
case R.id.menu_delete: // 删除
optionsMenuDelete();
break;
case R.id.menu_good_look: // 好看
case R.id.menu_not_good_look: // 不好看
break;
}
    return super.onOptionsItemSelected(item);
    }

 

   二、实现流程

       3、在OnCreate()中装配ListView数据,实现图书列表的显示

          . ListView 数据初始化:ArrayList<Map>

          . ListView 添加适配器,装配数据

 

4、选择菜单功能实现

  

•添加图书
•自定义对话框
•实现添加图书到数据列表中
•通知适配器数据已改变,需重新刷新列表
/**
* 给列表框装配数据,在Activity中显示图书列表信息
*/   
ArrayList<HashMap<String, Object>> data = new ArrayList<HashMap<String,Object>>();
        for (int i = 0; i < 20; i++) {
        HashMap<String, Object> map = new HashMap<String, Object>();
        map.put(NAME, "5分钟突破Java "+ (i+1) +".0");
        map.put(GOOG_LOOK, i%2==0);
        data.add(map);
}
        this.data = data;
        listView.setAdapter( adapter = new BookAdapter(this) );



 

 

 

下载视频代码

 

分享到:
评论

相关推荐

    Android手机平台音乐播放器毕业论文

    第四章 Android项目介绍 - 18 - 4.1 什么是Android? - 18 - 4.1.1 Android简介 - 18 - 4.1.2 Android Features特性 - 18 - 4.1.3 Android基本框架(Android Architecture) - 19 - 4.1.4 Android系统的四大组件 - ...

    Android音乐播放器毕业设计论文

    第四章 Android项目介绍 - 18 - 4.1 什么是Android? - 18 - 4.1.1 Android简介 - 18 - 4.1.2 Android Features特性 - 18 - 4.1.3 Android基本框架(Android Architecture) - 19 - 4.1.4 Android系统的四大组件 - ...

    Android高级编程--源代码

    由于现有的手机应用程序的开发是构建在各手机厂家的私有操作系统之上的,所以它限制了第三方应用程序的开发,而Android为我们提供了一个开放和通用的选择。因为没有了人为制造的障碍,所以Android开发人员可以自由地...

    老罗android开发视频教程全集百度网盘下载

    【第一版第十二章】老罗Android开发视频--菜单的使用(4集) 【第一版第十三章】老罗Android开发视频--异步加载数据库(2集) 【第一版第十四章】老罗Android开发视频--多线程编程(7集) 【第一版第十五章】老罗...

    中文版Android程序员入门

    中文版Android程序员入门 目 录 I 关于本博客的主题 IV 第一章 什么是Android 1 什么是Android - 嵌入式设备编程的历史-第一章(1) 1 ...Android SDK 工具参考 第十二章 (完) 185 Android SDK 1.5 - 包装索引 191

    android开发资料大全

    iceskysl: 说说我招聘android技术人员的思路 史上最全面的面试资料(包含所有IT大公司) 快到毕业的季节了,积累了一些andorid面试题,希望能帮助同学 android面试全跟踪,最真实的android面试经历 揭开应用推广...

    中文版Android程序员向导

    中文版Android程序员向导.doc&gt;&gt; 第一章 什么是Android 第二章 下载和安装Eclipse总则 第三章 下载和安装Android SDK 第四章 浏览Android SDK ...Android SDK 工具参考 第十二章 Android SDK 1.5 - 包装索引

    Android程序员入门(中文版).doc

    目 录 I 关于本博客的主题 IV 第一章 什么是Android 1 什么是Android - 嵌入式设备编程的历史-第一章(1) 1 开放手机联盟和Android-(2)...Android SDK 工具参考 第十二章 (完) 185 Android SDK 1.5 - 包装索引 191

    Android UI组件实例集合

    18、Android瀑布流实例 android_waterfall 实现了类似于迷尚android和蘑菇街android的瀑布流布局。 19、JakeWharton-ActionBarSherlock 是Android compatibility library 的一个扩展, 不知道什么原因 Android 兼容...

    《Android开发权威指南》随书光盘[教学视频+源程序]

    光盘中包括视频文件和全部的源程序。 SRC文件夹为源程序; 视频文件请读者用相应的播放器播放。 《Android开发权威指南》配套光盘包含开发视频及全部源程序,指导读者快速、无障碍地学通Android...第十六讲:综合案例

    android开发指南

    目 录 I 关于本博客的主题 III 第一章 什么是Android 1 什么是Android - 嵌入式设备编程的历史-第一章(1) 1 开放手机联盟和Android-(2...Android SDK 工具参考 第十二章 (完) 164 Android SDK 1.5 - 包装索引 169

    《Java和Android开发实战详解》第18章 Google地图与定位服务代码-by 南邮-陈杨

    第18章讲解了GPS定位服务与Google地图开发的知识。  《Java和Android开发实战详解》适合Android开发入门者、Java程序员,以及作为大中专院校相关专业师生的学习用书,也可作为培训学校的教材。 第18章 Google地图...

    东软集团内部培训-Android编程指南

    第 1 章什么是 Android 第二章 下载和安装 Eclipse 总则 第三章 下载和安装 Android SDK . 第四章 浏览 Android SDK 第五章 Android 程序: Hello World! ....第六章 使用命令行工具和 ...第十一章 应用程序:找一个朋友

    android一步一步最基础学习__新手

    第十八讲:Android SharedPreferences和File 第十九讲:Android Notification的使用入门 第二十讲:Content Provider 使用入门 第二十一讲:Broadcast Receiver 使用入门 第二十二讲:AIDL和远程Service调用 ...

    Android开发案例驱动教程 配套代码

    3.1.3 运行HelloAndroid 18 3.1.4 Android工程目录 19 3.1.5 AndroidManifest.xml文件 21 3.2 Android中的组件介绍 22 3.3 使用Android SDK帮助 23 3.3.1 Android SDK API文档 23 3.3.2 Android SDK开发指南 ...

    疯狂Android讲义源码

     1.3.5 使用DX编译Android应用 18  1.3.6 使用Android Asset Packaging  Tool(AAPT)打包资源 19  1.3.7 使用mksdcard管理虚拟SD卡 19  1.4 开始第一个Android应用 20  1.4.1 使用Eclipse开发第一个  ...

    Android核心技术与实例详解第2版

    全书分为3篇共18章,第1篇以简单易懂的实例为依托,详细介绍了Android平台的基本控件、高级控件、常用界面布局及菜单对话框等相关知识;第2篇介绍了Andr 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    中文版Android程序员向导.pdf

    第一章 什么是 Android 第二章 下载和安装 Eclipse 总则 第三章 下载和安装 Android SDK 第四章 浏览 Android SDK . 第五章 Android 程序: Hello World!...Android SDK 工具参考 第十二章 (完)

Global site tag (gtag.js) - Google Analytics