- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Android程序设计基础;本章内容;本章目标;第1节 在菜单中嵌入视图;嵌入ActionProvider ActionProvider的作用 在ActionBar上生成一个视图用作和用户交互 为选项菜单生成二级菜单 通过继承ActionProvider类来创建,ActionProvider相关方法如下: onCreateActionView 用于创建显示在ActionBar上的视图 onPrepareSubMenu 在子菜单弹出前执行,可以用于添加删除子菜单 在onCreateActionView返回对象时,子菜单相关方法不起作用 onPerformDefaultAction 处理ActionProvider的默认用户动作 ;嵌入ActionProvider 通过onCreateActionView嵌入视图 在菜单中使用ActionProvider ;嵌入ActionProvider 嵌入视图运行效果 ; ;嵌入导航标签 ActionBar提供了如下方法用于支持导航标签 newTab 方法用于创建一个标签页 addTab 方法用于添加一个标签页 添加导航标签代码示例 ;嵌入导航标签 ActionBar显示导航标签时分两种情况 采用横向屏幕且宽度足够时,导航标签直接显示在ActionBar上 采用窄屏,宽度不够时,导航标签显示在独立行上面 显示效果如下 ; ;嵌入自定义视图 在菜单项中嵌入视图可以通过以下两种手段 通过ActionProvider完成嵌入 通过ActionViewClass完成嵌入 通过ActionViewClass实现嵌入 1、直接使用已有的视图类或者编写自定义视图类 2、在菜单布局中通过ActionViewClass使用视图类 ; ;自定义ActionBar的标题栏 改变ActionBar的标题栏有多种方法 1、利用ActionBar提供的方法修改图标和标题内容 setIcon() 修改图标 setTitle() 修改标题文字内容 2、利用Window中的setFeatureInt方法自定义TitleBar 3、关闭ActionBar,在Activity中自定义设计标题栏 ; ;第2节 嵌入视图事件 ;获取ActionProvider项 ActionProvider是为菜单项的能力扩展而产生的 应该在创建菜单项时获取ActionProvider对象 ActionProvider产生的视图对象同样应该在此时获取 获取ActionProvider项代码示例 ;获取自定义视图 自定义视图是跟随菜单项设置而成的 应该在创建菜单项时获取ActionView对象 获取ActionView项代码示例 ;增加业务处理 在创建选项菜单时获取嵌入视图的相关对象 为这些对象增加相应的事件监听处理代码 ; ;第3节 自定义上下文菜单;自定义上下文菜单的思路 系统上下文菜单的缺憾 由于系统在带的上下文菜单在界面效果上不是很让人满意 比如不能显示图标 对默认的上下文菜单进行定制和修改很麻烦 通过对话框设计上下文菜单是个不错的想法 监听控件长按事件弹出自定义的对话框,阻止系统上下文菜单弹出 对话框中可以采用自定义的列表视图来实现模拟菜单的效果 在对话框模拟的上下文菜单和主视图之间通过观察者模式处理事件 ;设计上下文菜单的外观 由于通过自定义对话框来实现,外观的设计完全不受限制 菜单的标题可以通过布局来实现,也可以采用对话框标题栏实现 一般来讲是通过ListView的控件来生成菜单项 通过自定义列表项布局可以实现各种形状的自定义菜单 ;添加菜单项与图片 针对菜单的ListView设计自定义适配器 把菜单项信息封装在一个类中(Item) 使用List(itemList)记录所有的菜单项 设计一个addItem的方法用于添加菜单项 通过适配器设计的方法添加菜单项 ; ;第4节 自定义上下文菜单事件;设计菜单项监听接口 采用观察者模式设计监听接口 为菜单类添加注册监听器的方法 ;增加菜单项事件处理 让Activity实现OnMenuItemClickListener接口 ;
文档评论(0)