[android]透明通知栏与活的壁纸上银河 S4

标签: Android Galaxy
发布时间: 2014/3/3 21:29:14
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

完整编辑因为它显然还不清楚这的确是一个编程问题

关于银河 S4,通知栏是透明的默认情况。使用内置的"泡沫"壁纸时这看起来,如下所示,例如:

notification bar with bubbles wallpaper

现在,我有我自己活的壁纸。为简单起见,我只是填满可用画布与 0xFFFF0000 的截图,但通常它显示了不同的场景。关于银河 S4,我的壁纸不显示透明通知栏,但默认情况下黑色一:

notification bar with my wallpaper

我注意到有时我的墙纸显示透明酒吧也,这里在锁屏界面上。然而,我无法可靠地重现行为。

my wallpaper transparent bar

只是我的问题是: 有任何办法可以可靠地启用透明通知栏从我壁纸代码或清单吗?实际上,透明和黑色栏之间不可预知切换使用户体验很多比只是与总是黑酒吧更糟。

解决方法 1:

这是关于空心化 S4 的确可能:

public static boolean setTransparentNotificationBarTouchWiz(View view) {
    try {
        Field field = View.class.getDeclaredField("SYSTEM_UI_FLAG_TRANSPARENT_BACKGROUND");
        Class<?> t = field.getType();
        if (t == int.class) {
            int value = field.getInt(null);
            view.setSystemUiVisibility(value);
            return true;
        }
    } catch (NoSuchFieldException e) {
    } catch (IllegalAccessException e) {
    }

    return false;
}

我还要感谢凯文 @ TeslaCoil 与我分享此标志。

赞助商