【问题标题】:Android status bar - can it be transparent?Android状态栏-可以透明吗?
【发布时间】:2013-07-17 19:23:45
【问题描述】:

Android 状态栏能否像 iOS 中一样透明?我希望它融入到 iOS 上的活动中。可以做到吗?如果可以,怎么做?

编辑:只是为了澄清我需要使状态栏透明,而不是操作栏,是的,我知道我可以完全隐藏它 - 但这不是我要问的。

【问题讨论】:

  • 您是在创建应用程序还是在修改框架?
  • @k_wisniewski 你能解决这个问题吗?如果是,那么分享你的想法。这对我来说非常非常紧迫。

标签: android android-layout user-interface statusbar


【解决方案1】:

不可以让系统状态栏透明,shouldn't try to do so in an attempt to mimic iOS:

不要模仿其他平台的 UI 元素

【讨论】:

  • 我的客户要求我这样做 - 我个人认为在这个特定的应用程序中显示状态栏没有意义
【解决方案2】:

Android 4.4 KitKit 现在允许半透明状态和导航栏:

http://developer.android.com/about/versions/android-4.4.html#UI

例如,您可以将主题设置为 Theme.Holo.NoActionBar.TranslucentDecor。

【讨论】:

    【解决方案3】:

    您可以将您的活动设为全屏,这样您就不会看到状态栏。

    像这样:

     requestWindowFeature(Window.FEATURE_NO_TITLE);
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
     WindowManager.LayoutParams.FLAG_FULLSCREEN);
    
     setContentView(R.layout.main);
    

    或者设置一个这样的主题

    android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
    

    【讨论】:

    • 是的,我知道我可以完全隐藏它,但我希望它在它所在的位置,只需像在 iOS 上一样更改背景,使其看起来透明
    【解决方案4】:

    这是可以做到的。

    看看下面这个库,它基本上实现了一个淡入淡出的动作栏,从完全透明开始。

    https://github.com/ManuelPeinado/FadingActionBar

    【讨论】:

    • 我问的是状态栏,而不是操作栏。
    • 我的错。不,没有办法做到这一点。状态栏是名为 SystemUI 的系统应用程序的一部分。您唯一能做的就是将其隐藏为另一个答案中提到的@Torrent-lookup。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-07
    • 1970-01-01
    • 1970-01-01
    • 2015-07-06
    • 2017-07-07
    相关资源
    最近更新 更多