版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Android项目开发任务3-7:菜单控件Menu的使用导入任务任务实施相关知识拓展训练导入任务进行Android应用软件开发,需要掌握其软件界面控件的使用,本次任务使用Menu控件完成一个底部功能菜单界面的设计。导入任务【任务目标】使用Menu制作一个在Android系统中使用的应用程序底部功能菜单。导入任务【任务描述】菜单是Android应用中非常重要且常见的组成部分,主要可以分为三类:选项菜单、上下文菜单以及弹出菜单。其中弹出菜单以垂直列表形式显示多个操作选项。在Android中,弹出菜单显示在屏幕界面下方。它适用于提供与特定内容相关的大量操作。使用XML和Java代码都可以创建Menu。但是在实际开发中,往往通过XML文件定义Menu,这样做可以使用XML可以获得更清晰的菜单结构,将菜单内容与应用的逻辑代码分离。本次任务中,我们将使用Menu完成一个底部功能菜单及菜单项的设计与制作。导入任务【任务分析】本任务界面设计非常简单,主界面布局可用线性布局。在线性布局下,设置1个TextView控件用于显示“菜单示例”即可。任务的重心在于菜单界面的菜单项设计。任务实施创建项目后进行界面设计编写实现功能的程序代码运行应用程序并查看结果任务实施操作1:设计界面。创建一个【AndroidApplicationProject】,将项目命名为“menudemo”。双击打开项目“menudemo”中的主界面文件“activity_main.xml”,编写界面程序,在程序编辑窗口输入对应xml代码,完成界面代码的编写。任务实施操作2:制作菜单。双击打开项目“menudemo”中的菜单界面文件“activity_main.xml”,编写菜单程序,在程序编辑窗口输入对应xml代码,完成菜单的制作。任务实施操作3:实现功能。双击打开src目录中的“MainActivity.java”程序,在程序编辑窗口输入对应Java代码,完成功能代码的编写。任务实施操作4:运行调试。保存文件,浏览设计效果,运行该项目,看看程序运行效果。相关知识菜单控件MenuMenu菜单项设计Menu创建和载入Menu响应事件处理技术知识知识点1:菜单控件MenuMenu是指在Android系统中,当用户按下智能手机或平板电脑的“菜单”按钮时,屏幕底部会出现的选项菜单。Menu菜单一般会设计成图标菜单,可以显示多达6个菜单项。如果Menu包括6个以上菜单项,则Android会将第六项和其余项目放入溢出菜单,用户可以通过选择“更多”打开该菜单。Android提供了标准的XML格式的资源文件来定义菜单项。我们推荐使用XML资源文件来定义菜单。如果在XML资源文件创建菜单Menu,需要在/res/menu/目录下的菜单文件中构建以下几个元素:<menu>:定义一个Menu,是一个菜单资源文件的根节点,里面可以包含一个或者多个<item>和<group>元素。<item>:创建一个MenuItem,代表了菜单中一个选项。可以嵌套<menu>元素,以便创建子菜单。<group>:对菜单项进行分组,可以以组的形式操作菜单项。技术知识知识点2:Menu菜单项<item>设计<item>是Menu菜单项设计需要关注的主要元素,它的常见属性如下:android:id:菜单项(MenuItem)的唯一标识android:icon:菜单项的图标(可选)android:title:菜单项的标题(必选)android:showAsAction:指定菜单项的显示方式。常用的有ifRoom、never、always、withText,多个属性值之间可以使用|隔开。技术知识知识点3:Menu的创建和载入在Android中,Menu界面用<menu>、<item>、<group>三种XML标签定义和设计。而界面的载入和显示是通过Activity类重写onCreateOptionsMenu()方法来实现。该方法可以调用指定的菜单界面。在Activity中,重写onCreateOptionsMenu()方法,并在这个方法中完成加载Menu资源的操作,其关键代码如下:MenuInflaterinflater=getMenuInflater();
//获取MenuInflaterinflater.inflate(R.menu.menu_option,menu);
//加载Menu资源值得注意的是,
onCreateOptionsMenu()方法必须返回true,否则Menu将不会显示。技术知识知识点4:Menu响应事件处理Menu处理响应事件的方式是重写onOptionsItemSelected()方法。该方法将传递所选中的MenuItem。通过调用getItemId()方法来识别对应item,getItemId()方法将返回菜单项的唯一ID(由菜单资源中的android:id属性定义)。示例代码如下:@OverridepublicbooleanonOptionsItemSelected(MenuItemitem){
switch(item.getItemId()){
caseR.id.menu_option_1:returntrue;
caseR.id.menu_option_2:returntrue;
caseR.id.menu_option_3:returntrue;
caseR.id.menu_option_4:returntrue;
default:returnsup
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教 八年级 语文 下册 第4单元《15.应有格物致知精神 第2课时》课件
- 2025 网络基础之网络监控系统的数据分析与可视化课件
- 2026年装饰公司入股合同(1篇)
- 眼霜化妆品生产项目可行性研究报告
- 2026年及未来5年市场数据中国旅游酒店行业市场深度分析及投资战略规划研究报告
- 信息技术信息系统在城市植物园植物养护与科普教育信息管理中的应用课件
- 2025 高中信息技术数据与计算之数据安全的多方计算隐私保护课件
- 洗衣机维修培训【课件文档】
- 2026年牛脂作为生物柴油原料市场格局分析
- 2026年氯己定浸渍敷料与半透膜聚氨酯敷料7天更换规范
- 5.1人民代表大会制度 课件(23张幻灯片)+内嵌视频 道德与法治统编版八年级下册
- 动火作业与受限空间安全管理标准
- 2026年当辅警笔试题库及一套完整答案
- 北京市东城区2025-2026学年高二上学期期末考试化学试卷(含答案)
- 国家基层糖尿病防治管理指南(2025版)
- 牛肝菌介绍教学课件
- 2025年山东省委党校在职研究生招生考试(政治理论)历年参考题库含答案详解(5卷)
- XB/T 405-2016铈铁合金
- GB/T 9966.16-2021天然石材试验方法第16部分:线性热膨胀系数的测定
- GB/T 3733.2-1983卡套式端直通接头体
- GA/T 1133-2014基于视频图像的车辆行驶速度技术鉴定
评论
0/150
提交评论