2017-08-08 170 views
0

我的应用可以选择进入全屏模式。设备Samsung Galaxy S7 Edge的用户向我报告,在这种情况下显示导航软按钮,并且在应用处于全屏状态时不会消失。如何在Android应用中以三星设备的全屏模式隐藏软键

这里是我使用的代码:我已经与一些选项发挥各地

getWindow().addFlags(
        WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD 
        | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON 
          | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON 
      ); 
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 

mainFrame.setSystemUiVisibility(
         View.SYSTEM_UI_FLAG_LOW_PROFILE | 
         View.SYSTEM_UI_FLAG_FULLSCREEN | 
         View.SYSTEM_UI_FLAG_LAYOUT_STABLE | 
         View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | 
         View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | 
         View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
     ); 

而是因为我没有自己的三星设备很难。使用此设备的某人能否告诉我正确的设置,导航软键不会以全屏模式显示?

回答

0

我发现了一些可能有用的东西。它来自Google的开发者网站,我认为它完全符合您的需求。我希望这会有所帮助。

我认为这部分在开始的时候是你需要什么,但我也为你提供以下更多信息的链接:

的是Android 4.4(API等级19)介绍了setSystemUiVisibility新SYSTEM_UI_FLAG_IMMERSIVE标志(),其让您的应用真正成为“全屏”。此标志与SYSTEM_UI_FLAG_HIDE_NAVIGATION和SYSTEM_UI_FLAG_FULLSCREEN标志组合时隐藏导航和状态栏,并让您的应用程序捕获屏幕上的所有触摸事件。

https://developer.android.com/training/system-ui/immersive.html

编辑

我找到了答案与你和建议的方法类似的问题如下。尝试添加到您的代码。它会做的伎俩。

int UI_OPTIONS = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | 
    View.SYSTEM_UI_FLAG_FULLSCREEN | 
    View.SYSTEM_UI_FLAG_LAYOUT_STABLE | 
    View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | 
    View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION; 

getWindow().getDecorView().setSystemUiVisibility(UI_OPTIONS); 

这里是链接到原:https://stackoverflow.com/a/31483291/8434076

+0

我了解该文档不同的是,SYSTEM_UI_FLAG_IMMERSIVE_STICKY没有互动就在几秒钟后再次隐藏按钮。所以开始时应该没有区别。 https://developer.android.com/training/system-ui/immersive.html。也许有人可以检查这个? – Alex

+0

检查我的编辑。希望它解决了问题 –

+0

我问用户测试这个,它没有工作。它与我的代码没有太大的区别。我认为它的三星具体如此希望有人用这个设备可以提供帮助。 – Alex

相关问题