一箫一剑平生意,负尽狂名十五年。这篇文章主要讲述Android棒棒糖中的透明actionBar和statusBar相关的知识,希望能为你提供帮助。
我正在尝试创建此接口:
这是我的实际结果:
【Android棒棒糖中的透明actionBar和statusBar】
- 状态栏透明,我们将图像视为背景:好的
- 操作栏不透明:NOK
<
?xml version="1.0" encoding="utf-8"?>
<
resources>
<
!-- inherit from the material theme -->
<
style name="MaterialAppDetailTheme" parent="android:Theme.Material.Light">
<
item name="android:statusBarColor">
@android:color/transparent<
/item>
<
item name="android:windowActionBarOverlay">
true<
/item>
<
!-- enable window content transitions -->
<
item name="android:windowContentTransitions">
true<
/item>
<
!-- specify shared element transitions -->
<
item name="android:windowSharedElementEnterTransition">
@transition/change_image_transform<
/item>
<
item name="android:windowSharedElementExitTransition">
@transition/change_image_transform<
/item>
<
item name="android:windowTranslucentNavigation">
true<
/item>
<
item name="android:windowTranslucentStatus">
true<
/item>
<
/style>
<
/resources>
答案您可以将工具栏颜色更改为透明,如下所示:
mToolbar.setBackgroundColor(getResources().getColor(android.R.color.transparent));
您也可以在XML上更改它的背景:
android:background="@android:color/transparent"
或者,如果您正在使用ActionBar:
getSupportActionBar().setBackgroundDrawable(new ColorDrawable(getResources().getColor(android.R.color.transparent)));
如果你不使用
getActionBar()
,请使用ActionBarActivity
结果:
另一答案使用这种风格:
<
style name="AppTheme" parent="Theme.AppCompat.Light">
<
item name="android:textColorPrimary">
@color/my_text_color<
/item>
<
item name="colorPrimary">
@android:color/transparent<
/item>
<
item name="windowActionBarOverlay">
true<
/item>
<
/style>
另一答案对于> = 21的API,将这些代码行添加到主题
<
item name="android:windowDrawsSystemBarBackgrounds">
true<
/item>
<
item name="android:statusBarColor">
@android:color/transparent<
/item>
别忘了添加
android:fitsSystemWindows="true"
推荐阅读
- 在动作栏android中显示徽标和应用程序名称
- Xamarin - 取代操作栏(Android 7.1 - API 25)
- android中的pidstat命令()
- 如何在android中实现视图滑动
- java.lang.NoClassDefFoundError(解析失败:Lcom / google / android / gms / common / internal / zzbp)
- 使用activity方法后,Android应用程序与RabbitMQ断开连接
- Xamarin.Android AndroidEnvironment文件未应用于更改GC Bridge实现
- 如何在新的app界面中的jTessBoxEditor(tesseract)中生成tiff / box()
- 触摸无法在Android设备上的Unity上使用