• Android开发之-Menu菜单的创建
  • 黑色平底锅 发表于 2016/2/21 20:56:00 | 分类标签: Android开发 手机开发 菜单栏
  • Android3.0(API level 11)开始,Android设备不再需要专门的菜单键。随着这种变化,Android app应该取消对传统6项菜单的依赖。取而代之的是提供anction bar来提供基本的用户功能。
                

    创建3种基本的菜单

    Options menu(选项菜单)和action bar选项菜单是放置在app中具有全局影响的功能,例如“搜索”,“发邮件”,“设置”等在Android3.0及以上,选项菜单被放置在action bar上。
     

    创建一个选项菜单:

    重写onCreateOptionMenu()方法
    1 @Override
    2 public boolean onCreateOptionsMenu(Menu menu) {
    3 MenuInflater inflater = getMenuInflater();
    4 inflater.inflate(R.menu.game_menu, menu);
    5 return true;
    6 }
    有两种方法添加菜单项(menu items):一种是引用xml文件,另一种是使用add()方法。

    Android2.3中,系统在用户点击菜单(Menu)键后调用onCreateOptionMenu()方法,在3.0及以上,系统在开始Activity时调用onCreateOptionMenu()方法。

    处理菜单项响应事件:

    调用onOptionsItemSelected(MenuItem item)方法
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
    // Handle item selection
    switch (item.getItemId()) {
    case R.id.new_game:
    newGame();
    return true;
    case R.id.help:
    showHelp();
    return true;
    default:
    return super.onOptionsItemSelected(item);
    }
    }
     动态改变选项菜单的内容需要使用onPrepareOptionsMenu() 方法,该方法传递menu对象,这样我们就能操作它,例如增加菜单项,删除菜单项等。注意,在3.0及以上,在使用onPrepareOptionsMenu方法前,需要调用 invalidateOptionsMenu ()方法。
  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 感谢本文作者
  • 作者头像
  • 昵称:黑色平底锅
  • 加入时间:2013/6/13 0:00:00
  • TA的签名
  • 这家伙很懒,虾米都没写
  • +进入TA的空间
  • 以下内容也很赞哦
分享按钮