Android半透明状态栏和布局填充顶部

时间:2014-06-29 08:14:16

标签: android android-actionbar padding

在我的应用程序中,我正在使用带有标签的操作栏,我想为状态栏着色,所以我正在使用

<item name="android:windowTranslucentStatus">true</item>

设置状态栏traslucent。在此之后,布局的内容将显示在操作栏后面。 enter image description here

在页面布局中,我正在使用

android:paddingTop="?android:attr/actionBarSize"

正如谷歌在这里所建议的那样 https://developer.android.com/training/basics/actionbar/overlaying.html

也许建议只适用于actionbat,没有标签,但如果我使用操作栏标签,我该如何解决?

2 个答案:

答案 0 :(得分:1)

好的,我在这里找到了解决方案:Translucent Theme in Android

我最终放弃了这种效果,因为windowBackground填满了整个页面。

答案 1 :(得分:0)

你可以像这样得到状态栏的高度:(src:https://github.com/kibotu/net.kibotu.android.deviceinfo/blob/cdc7009ac44159636bc6a49be07d92f035d19801/lib/src/main/java/net/kibotu/android/deviceinfo/library/display/Display.java#L78-L85

public static int getStatusBarHeight() {
    int result = 0;
    int resourceId = getContext().getResources().getIdentifier("status_bar_height", "dimen", "android");
    if (resourceId > 0) {
        result = getContext().getResources().getDimensionPixelSize(resourceId);
    }
    return result;
}