隐藏ICS后退任务切换器button

只是想知道如何以编程方式隐藏ICS后退/ home / etc软件button。 就像Youtube应用在播放video时一样。 我想在播放video的时候隐藏它们,但是如果用户点击屏幕,就把它们提起来。

我似乎无法在networking上的任何地方或Google的文档中find它。

Solutions Collecting From Web of "隐藏ICS后退任务切换器button"

尝试设置标志为SYSTEM_UI_FLAG_HIDE_NAVIGATION的全屏窗口

pinxue是现货…你想要SYSTEM_UI_FLAG_HIDE_NAVIGATION 。 例:

myView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION); 

有一点要注意的是,任何(我的意思是任何)用户交互的导航栏将被重新显示。

与蜂窝最接近你可以进入“熄灯”模式(现在称为“低调”… SYSTEM_UI_FLAG_LOW_PROFILE )。 这只是使导航栏上的项目不太明显(您可能已经看到的小“点”)。 如果您想尽最大努力维持与Honeycomb的向后兼容性,则可以使用reflection来使用“最佳”方法:

 // Ask the System Bar to hide int whichHiddenStatusToUse = android.view.View.STATUS_BAR_HIDDEN; try { // if this next line doesn't thrown an exception then we are on ICS or // above, so we can use the new field. whichHiddenStatusToUse = View.class.getDeclaredField("SYSTEM_UI_FLAG_HIDE_NAVIGATION").getInt(mDrawingSurface); } catch (Exception ex) { } // now lets actually ask one of our views to request the decreased visibility myView.setSystemUiVisibility(whichHiddenStatusToUse); 

你想要SYSTEM_UI_FLAG_HIDE_NAVIGATION 。

这个标志是从Ice Cream Sandwich,API 14开始添加的。从14开始,在Honeycomb API 11中添加了一个标志STATUS_BAR_HIDDEN 。在那之前,软导航button并不存在,所以全屏模式完全由主题 (特别是主题.NoTitleBar.Fullscreen )。

使用:

 if( Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH ) mBaseLayout.setSystemUiVisibility( View.SYSTEM_UI_FLAG_HIDE_NAVIGATION ); else if( Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB ) mBaseLayout.setSystemUiVisibility( View.STATUS_BAR_HIDDEN ); 

这个答案可能不是直接回答这个问题。 但我张贴它可以帮助别人节省时间。

我需要完全隐藏导航栏。 即使用户点击屏幕,也应该保持隐藏状态。

以上都没有为我工作。

我在很长一段时间使用这个话题几天后写了一个类。 我最终在这个class上

UtilsTaskBar.java

我无法在任何地方进行testing,但它在4。**上运行

注:我使用这个类的特殊用途的应用程序,这是典型的用户。

如果你用这个类隐藏导航栏,它将不会再显示,直到你重新启动设备,或者你再次显示相同的类。

所以只有当你真的需要它时才使用它。

在AndroidManifest.xml中添加这个:

 <uses-permission android:name="android.permission.BROADCAST_STICKY"/> 

那么你可以使用这个函数来显示和隐藏home / return导航栏

 private void changeSystemBarVisibilty(boolean show) { Context context = getApplicationContext(); final Intent intent = new Intent("android.intent.action.SYSTEM_BAR_VISIBILITY"); intent.putExtra("show", show); context.sendStickyBroadcast(intent); } 

当他们在应用程序中谈论它时,它被称为“熄灯模式”。 我找不到任何与ICS相关的东西,但是这里有一个关于Honeycomb讨论的链接。

api呼叫在蜂窝中熄灭模式