为啥app没有menu键?
作为半路出家做android app的人,对android很多东西不是很熟悉,造成很多苦恼,
测试机是4.2.2的系统,
之前的app没有menu键,也没有实体键,发现是因为
android:name="com.nufront.mediacenter.LauncherActivity"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar"
android:label="@string/app_name" >
没有title bar 导致的。
=====
参考http://www.2cto.com/kf/201206/136813.html
添加ActionBar
不需要导入ActionBar,因为在android3.0或者以上版本中,ActionBar已经默认的包含在Activity中
在Android3.0的默认主题“holographic”中,已经创造了ActionBar
当android:minSdkVersion 或者 android:targetSdkVersion属性被设置成11或者更高时,应用会被认为是Android3.0版本(默认含有ActionBar)
去除ActionBar
我们可以通过把主题设置为Theme.Holo.NoActionBar为一个Activity去除掉ActionBar。
<activity android:theme="@android:style/Theme.Holo.NoActionBar">
======================
现在又发现一个app没有menu键,但是是有title的,
找了好久解决不了问题,很奇怪为啥几乎一样xml配置的其他app 在action bar上就有menu呢?
看到http://blog.csdn.net/penglijiang/article/details/7844514 说,
- <uses-sdk
- android:minSdkVersion="8"
- android:targetSdkVersion="15"
把android:targetSdkVersion改为10,可以暂时解决这个问题,就是在虚拟按键旁边有这个menu键了。。。
但是,
看到 http://www.whatsapp.com/faq/zh_cn/android/21228643 说,4.0和4.2的位置不一样的,
看这个 http://www.2cto.com/kf/201206/136813.html 说,应该上头的那个地方就叫做 action bar,
其他app也是跟我一样的target version,人家就好好的。
怎么才能在上面的操作栏 显示那三个点的menu键呢?
===========后来发现api > 10 就不好用了 参考 http://blog.csdn.net/jiaoyang623/article/details/10526073
在Activity的onCreate中设置flag
- getWindow().setFlags(WindowManager.LayoutParams.FLAG_NEEDS_MENU_KEY, WindowManager.LayoutParams.FLAG_NEEDS_MENU_KEY);
或者
- getWindow().setFlags(0x08000000, 0x08000000);
这么改的话,可以控制某个Activity有菜单,某个没有。
我用的第二个方法,menu键ok!
=====
参考http://blog.csdn.net/klpchan/article/details/9749569
1】应用图标、2】AcationBar菜单项 3】AB溢出菜单项,下面还可以看到Tab标签,这些都可以在ActionBar在显示出来。ActionBar是在API11以后才引入的,如果想在早期版本中使用该组件,可以导入android.suppor.v7.app.actionbar。参考http://developer.android.com/tools/support-library/setup.html设置库。对于targetSdkVersion在11或者以上的应用来说,默认主题"Theme.Holo"使用了ActionBar,如果不想使用该组件,可以设置主题为"Theme.Holo.NoActionBar"。
可知,api11之上,默认主题都是有menu键的
于是, 指定主题:
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.Holo"
>
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
logo title 和 menu 都能看到了。
为啥app没有menu键?相关推荐
- 平板界面状态栏按下menu键显示不出,无响应
1.问题描述: 在4.1的系统下,调试机器是768*1024的 默认: 在launcher 界面时状态栏显示menu键,menu键可以显示,但是按下menu键时却没有相应界面弹出, 但是原来的机器: ...
- 仿Drinkspiration App的menu
做了一個仿Drinkspiration App的menu 不知道Drinkspiration的人可以看這個視頻 使用方法請參考demo code裡的readme CurveDemo.zip 转载于: ...
- 屏蔽android的menu键,使menu键不能用,自定义menu键
在Activity中重写onKeyDown方法,Menu键被屏蔽但HOME键未被屏蔽,其中还HOME屏蔽在我的另外一篇博客中已详细介绍,下面来解决Menu键被屏蔽,让其中MENU键有效. 屏蔽andr ...
- LockScreen时MENU键
升级到2.3.7后,发现在启动后,LockScreen状态下,按MENU键不像2.2中那样可以解锁屏幕了. 原来,是被overlay了. 在device/samsung/smdkv210/overla ...
- Android中添加Options Menu,按MENU键无反应
自已开发的一个日历项目,其中一个显示日程列表的Activity只有一个ListView,数据来源于数据库. 在这个xxxActivity.java里面添加了: /** Create menu. */ ...
- Cocos2dx 响应Android返回键和Menu键
1.在layer中调用: setKeypadEnabled(true);//设置相应按键消息 layer中重写以下两个方法: virtual void keyBackClicked(); //响应返回 ...
- 安卓模拟器使用问题1:没有menu键
这是因为新版的安卓模拟器是没有menu键的,我当时看的书是"第一行代码",书里面是有menu键的,当时找了很久,然后又百度,才知道想在模拟器使用menu键只能使用键盘的快捷键,而m ...
- Android监听返回键、Menu键、Home键、
back键 监听back键还是很简单的,有两种方法: 调用onBackPressed()方法:调用此方法会自动调用finish(). @Override public void onBackPress ...
- android 障蔽Home键, 屏蔽BACK键,MENU键
屏蔽Home键 @Override public void onAttachedToWindow() { this.getWindow().setType(WindowManager.LayoutPa ...
最新文章
- 计算机基本知识培训稿,计算机基础知识培训稿.doc
- (转)Response.Redirect 打开新窗口的两种方法
- php管理用户名和密码,管理员用户名/密码不适用于PHP
- markdown中添加锚点
- oracle distinct用法
- fetch用英语解释_初中英语重点知识点,初中三年必须掌握!
- CSS3实践之路(一):CSS3之我观
- SparkStreaming基础
- Strust2用户注册,使用token防止刷新重复提交
- JVM优化系列-对象内存分配和回收的细节
- go语言学习--string、int、int64互相转换,字符串的截取,数组和字符串的转换
- Vertica系列: Vertica DB连接负载均衡
- 郑州没有互联网 | 畅言
- liunux 查看系统参数、网络参数的命令
- 【生物信息】影像组学入门实践成长营(14天)
- FlashFXP 便携版,U盘版,真正绿色
- 一个简单的Python樱花飘落动画代码
- 少数派实测报告:AI巨无霸模型GPT-3 | 附送API 调用方法「AI核心算法」
- K22中使用UART的IDLE Line功能
- linux 分析nginx日志,Linux Awk使用案例总结-nginx日志统计
热门文章
- 个人随意总结知识——数据结构教程(第5版)【李春葆】
- A1,A2,A3,A4纸的尺寸大小|A4纸与分辨率的关系|像素换算|ABC号纸尺寸|纸张幅面规格
- linux静态链接库添加,c-静态链接库时,出现链接器错误:找不到-...
- 多叉路口交通灯问题,输入任意道口数输出排序解决方案
- 陶泓达:实力指导短线交易策略!让你翻仓回本
- ElasticSearch IK Analyzer 远程扩展字典remote_ext_dict无效
- freemaker生成doc文档(特殊字符导致异常)
- 短视频社交|电影点播平台Springboot+vue+ElementUI前后端分离
- 并发编程含义比较广泛,包含多线程编程、多进程编程及分布式程序等 目录 1. “共享内存系统”,消息传递系统”。	1 1.1. 共享模式 多进程 多线程	1 1.2. Actor消息模式 事件驱动	2
- CSS+HTML学习笔记005