gpt4 book ai didi

java - setStatusBarColor 不起作用

转载 作者:行者123 更新时间:2023-12-02 03:00:32 29 4
gpt4 key购买 nike

所以我想做一个透明的状态栏。问题是,状态栏总是变成黑色。我使用了 setStatusBarColor() 方法,但没有帮助。这就是我最终得到的结果。 Black status bar :|

这是 Activity 的类:

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
/*if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
}*/
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window w = getWindow(); // in Activity's onCreate() for instance
w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
getWindow().setStatusBarColor(Color.TRANSPARENT);

}else {
FrameLayout relativeLayout = (FrameLayout) findViewById(R.id.mainStatusBar);
relativeLayout.setVisibility(View.GONE);
}
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
.setDefaultFontPath("SourceSansPro-Regular.otf")
.setFontAttrId(R.attr.fontPath)
.build()
);

}
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}


}

最佳答案

使用此代码使透明

 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
}

并在 list 中使用 NoActionBar 主题。

关于java - setStatusBarColor 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42433899/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com