Android开发,设置状态栏颜色

StatusBarColorSetter.java
package com.example.buyishi.translucentdemo;

import android.app.Activity;
import android.content.res.Resources;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;

public class StatusBarColorSetter {
    public static void setStatusBarColor(Activity activity, int color) {
        Window window = activity.getWindow();
        window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        ViewGroup decorView = (ViewGroup) window.getDecorView();
        View statusBarView = new View(activity);
        Resources resources = activity.getResources();
        int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");
        int statusBarHeight = resources.getDimensionPixelSize(resourceId);
        ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, statusBarHeight);
        statusBarView.setLayoutParams(layoutParams);
        statusBarView.setBackgroundColor(color);
        decorView.addView(statusBarView);
    }
}

为避免界面布局向上偏移,须在布局根元素中添加android:fitsSystemWindows="true"

原文地址:https://www.cnblogs.com/buyishi/p/9571587.html

时间: 2024-10-08 03:07:15

Android开发,设置状态栏颜色的相关文章

沉浸式状态栏 设置状态栏颜色

方式一:使用系统API 这个特性是andorid4.4支持的,最少要api19才可以使用. 1.隐藏标题栏等 在代码中设置 requestWindowFeature(Window.FEATURE_NO_TITLE);//隐藏标题栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);//窗口透明的状态栏 getWindow().addFlags(WindowManager.LayoutParams.FL

设置状态栏颜色

self.navigationController.navigationBar.barStyle = UIBarStyleBlack;//黑色 self.navigationController.navigationBar.barStyle = UIBarStyleDefault;//白色 设置不同界面状态栏文字颜色不同,可在viewWillAppear及viewWillDisappear中分别设置状态栏颜色

Android开发之文本颜色改变

TextView tv = (TextView)findViewById(R.id.tv); String str ="我要变成红色字体,红色字体,红色字体"; String[] str2 ={"我","变","红"}; tv.setText(turnSomeWordsToRed(str,str2)); public SpannableStringBuilder turnSomeWordsToRed(String Origin

Android中设置文本颜色的三种方法及颜色大全

原文:Android中设置文本颜色的三种方法及颜色大全 源代码下载地址:http://www.zuidaima.com/share/1550463694572544.htm 1.利于系统自带的颜色类 如TextView1.setTextColor(Android.graphics.Color.RED); 2.数字颜色表示法 TextView1.setTextColor(0xffff00ff); 3.自定义颜色 TextView1.setTextColor(this.getResources().

Android开发 设置控件边角半圆

1 <?xml version="1.0" encoding="utf-8"?> 2 <shape xmlns:android="http://schemas.android.com/apk/res/android" > 3 <corners android:radius="30dip" /> 4 <solid android:color="#ff3290f0" /

Android MenuItem 设置文本颜色-TextColor设置

前面一直在寻找 MenuItem文字颜色设置. 我发现API唯一的背景颜色设置. .. 因此,找到下面的方法.在OverFlow看到. 在onCreateOptionsMenu一下. 使MenuItem产生的ItemView去改动文字颜色 @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present.

Android Studio设置logcat颜色

在Android Studio里面默认的logcat显示颜色是灰色的,不同等级的log是没有颜色分别的,如图 这一点远不如Eclipse好看,但是Android Studio的logcat的颜色其实也是可以设置的 进入Settings界面,搜索logcat,进入如下界面 可以看到默认的除了ERROR和ASSERT级别的log是红色之外,其余的都是灰色 所以我们可以自己DIY一下各个等级的log颜色 这里我选择Info级别的进行修改,取消勾选Inherit Attributes From:选项,

Android开发 - 设置DialogFragment全屏显示

默认的DialogFragment并不是全屏,但有些需求需要我们将对话框设置为全屏(内容全屏),Android并没有提供直接的API,通过其它不同的方法设置全屏在不同的机型上总有一些诡异的问题,经过测试,下面的方法可以实现各个机型的全屏.测试 SDK Version = 28 覆写Fragment的onStart()方法: @Override public void onStart() { super.onStart(); Dialog dialog = getDialog(); if (dia

android 开发-设置控件/view的水平方向翻转

设置控件沿着水平方向翻转(即Y轴180°) 看效果: 代码: <pl.droidsonroids.gif.GifImageView android:id="@+id/gv_image1" android:layout_width="0dp" android:layout_weight="1" android:layout_height="150dp" android:scaleType="fitXY"