关闭

Android studio上设置状态栏为透明 Android5.0

标签: android studioandroid状态栏透明
1821人阅读 评论(0) 收藏 举报
分类:

效果图:


方法一:

直接在你activity的onCreate()上面添加以下代码:

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);

		//设置状态栏为透明
		if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
			Window window = getWindow();
			window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS
					| WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
			window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
					| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
					| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
			window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
			window.setStatusBarColor(Color.TRANSPARENT);
			window.setNavigationBarColor(Color.TRANSPARENT);
		}

		setContentView(R.layout.addcity_activity);

方法二:

创建values-v19文件夹,在此文件夹下创建style.xml,在xml上添加:

<resources>
    <style name="AppTheme" parent="@style/AppBaseTheme">
        <item name="android:windowTranslucentStatus">true</item>
    </style>
</resources>

然后在你所需要的布局上面添加:

  android:fitsSystemWindows="true"
  app:popupTheme="@style/ThemeOverlay.AppCompat.Light"


注:fitSystemWindows="true"要写在你说应用的toolbar上,不然你会发现状态栏会和toolbar挤在一起,不好看。


自己也是在网上看到大神们的解决方法,自己总结了一下,学习学习,我的已经解决。



1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:13244次
    • 积分:269
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:0篇
    • 译文:0篇
    • 评论:5条
    文章分类