方法一:在AndroidManifest.xml中实现:
注册Activity时加上如下的一句配置就可以实现。
<activity android:name=".Activity"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
方法二:在代码中实现:
@Override |
02 | public void onCreate(Bundle savedInstanceState) { |
03 | super .onCreate(savedInstanceState); |
04 | // hide titlebar of application |
05 | // must be before setting the layout |
06 | requestWindowFeature(Window.FEATURE_NO_TITLE); |
07 | // hide statusbar of Android |
08 | // could also be done later |
09 | getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, |
10 | WindowManager.LayoutParams.FLAG_FULLSCREEN); |
11 | setContentView(R.layout.main); |
12 | text = (EditText) findViewById(R.id.EditText01); |
13 | |
14 | } |
另,设置竖屏 屏蔽 横屏的方法: android:screenOrientation="portrait"
如不屏蔽加速感应器,则不用设置此属性。即默认为:android:screenOrientation="sensor"
感谢你们的回答,这是窗口下的工具栏,是全局的。无法通过布局来消除他。
-
yonge 回答于 2012-03-18 16:39
如果不想在某个activity中使用action bar,可以设置该activity的主题为Theme.Holo.NoActionBar。例如:
<activity android:theme="@android:style/Theme.Holo.NoActionBar">
--- 共有 3 条评论 ---@Liangar 谢谢,朋友!!(10个月前 by chester168)回复
回复 @chester168 : 可以设置 <style name="Theme.NoTitleBar.Fullscreen">但是,程序里面也需要有相应的代码:getWindow().getDecorView().setSystemUiVisibility(View.INVISIBLE);(10个月前 by Liangar)回复
activity android:theme="@android:style/Theme.Holo.NoActionBar"无法去除工具栏(1年前 by chester168)回复
-
guhaizhou 回答于 2013-07-29 18:11可以得到root权限后修改主system/app/SystemUI.apk为SystemUI.apk这样就可以屏蔽掉那几个键。不过开发中这样做了很老火,呵呵请谨用,如果不用了同样的方法将那个apk改回来
-
何文策 回答于 2013-08-07 16:54
在android\frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\tablet\ 下的TabletStatusBar.java的 addStatusBarWindow() 函数中
WindowManagerImpl.getDefault().addView(sb, lp); 这句话是就是在把sb 加入到window中 屏蔽掉这句就行了或者WindowManagerImpl.getDefault().removeView(sb); 也可以移除 其中sb就是 SystemUI的 View , addStatusBarWindow()全部代码如下:
final View sb = makeStatusBarView();
Log.w("____________" , "addStatusBarWindow");
final WindowManager.LayoutParams lp = new WindowManager.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.TYPE_NAVIGATION_BAR,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_TOUCHABLE_WHEN_WAKING
| WindowManager.LayoutParams.FLAG_SPLIT_TOUCH,
// We use a pixel format of RGB565 for the status bar to save memory bandwidth and
// to ensure that the layer can be handled by HWComposer. On some devices the
// HWComposer is unable to handle SW-rendered RGBX_8888 layers.
PixelFormat.RGB_565);// We explicitly leave FLAG_HARDWARE_ACCELERATED out of the flags. The status bar occupies
// very little screen real-estate and is updated fairly frequently. By using CPU rendering
// for the status bar, we prevent the GPU from having to wake up just to do these small
// updates, which should help keep power consumption down.// lp.gravity = getStatusBarGravity();
lp.setTitle("SystemBar");
lp.packageName = mContext.getPackageName();
WindowManagerImpl.getDefault().addView(sb, lp);
// Log.w("______________" , "removeView(sb)");
// WindowManagerImpl.getDefault().removeView(sb);