我想在Android 4.4的应用程序中创建一个透明的状态栏。 我该怎么做?
我累了:
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/skipPrimary</item>
<item name="colorPrimaryDark">@color/skipPrimary</item>
<item name="colorAccent">@color/skipPrimary</item>
</style>
并在清单中:
<application
android:name=".App"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:theme="@style/AppTheme" >
并在活动中:
<activity
android:name=".activities.StartActivity"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize"
android:screenOrientation="portrait"
android:theme="@style/AppTheme"
android:windowSoftInputMode="adjustResize|stateHidden" />
答案 0 :(得分:0)
这个会在Lollipop设备上抛出异常。 primColor必须是不透明的。
style.xml
使用<style name="ThemeActionBar"
parent="Widget.AppCompat.Light.ActionBar.Solid">
<item name="android:background">@null</item>
<!-- Support library compatibility -->
<item name="background">@null</item>
</style>
<item name="android:actionBarStyle">@style/ThemeActionBar</item>
<item name="android:windowActionBarOverlay">true</item>
<!-- Support library compatibility -->
<item name="actionBarStyle">@style/ThemeActionBar</item>
<item name="windowActionBarOverlay">true</item>
包括你的主题..
var NameAndIdentificationView = Application.Views.ItemView.extend({
loadMailingAddressView: function() {
//call to mailing address view method setAddress() from here
}
});
答案 1 :(得分:0)
您还可以通过在活动中设置状态栏,将状态栏设置为背景颜色较深或甚至相同的颜色。
您可以使用以下代码getWindow().setStatusBarColor(getResources().getColor(R.color.your_color));
设置活动中的状态栏颜色。
如果您想使用较深的颜色,可以通过更改颜色的HSB来实现。有关更详细的说明,请阅读以下文章:Android change status bar color by converting existing color's HSB