有没有一种编程方式可以使Activity窗口半透明?对于我的目的,我不能使用静态XML资源。
我尝试将背景资源设置为半透明颜色,但这只会使背景呈现实心黑色。
有没有一种编程方式可以使Activity窗口半透明?对于我的目的,我不能使用静态XML资源。
我尝试将背景资源设置为半透明颜色,但这只会使背景呈现实心黑色。
在您的活动类中编写它
Window window = this.getWindow();
window.setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
android:background="#00FFFFFF"
后,对我很有效。 - Kizito IkapelUtils.convertActivityToTranslucent(activity);
Utils.convertActivityFromTranslucent(activity);
@Override
public void onCreate(Bundle savedInstanceState) {
// Set a Translucent NoTitleBar theme before calling super.onCreate()
setTheme(android.R.style.Theme_Translucent_NoTitleBar);
super.onCreate(savedInstanceState);
}
API 30 添加了一个setTranslucent
方法来实现这个功能:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
setTranslucent(true)
window.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))
}