概述
Android 修改状态栏的方法
/**
* 活动基类,其他子活动继承就可以了
*/
public class BaseActivity extends AppCompatActivity {
/**
* 状态栏的颜色
*/
public static final int THIS_STATES_BAR_COLOR = R.color.vx_top_black;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_base);
// 设置状态栏背景
setThisStatusBarColor(THIS_STATES_BAR_COLOR);
}
/**
* 修改状态栏的背景
* @param resId 颜色id
*/
public void setThisStatusBarColor(final int resId) {
getWindow().getDecorView().addOnLayoutChangeListener(new View.OnLayoutChangeListener() {
@Override
public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
//利用反射机制修改状态栏背景
int identifier = getResources().getIdentifier("statusBarBackground", "id", "android");
View statusBarView = getWindow().findViewById(identifier);
// 这里传入想设置的颜色
statusBarView.setBackgroundResource(resId);
getWindow().getDecorView().removeOnLayoutChangeListener(this);
}
});
}
}
最后
以上就是开放小兔子为你收集整理的Android 修改状态栏的方法Android 修改状态栏的方法的全部内容,希望文章能够帮你解决Android 修改状态栏的方法Android 修改状态栏的方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复