我有一个定义了以下主题的 Android(在 A2.2 上开发)应用程序:
<style name="ProgressBar"> parent="@android:style/Widget.ProgressBar">
<item name="android:indeterminateDrawable">@drawable/progress_medium</item>
</style>
<style name="AlertDialog" parent="@android:style/AlertDialog">
<item name="android:fullDark">@drawable/bgr_alert</item>
</style>
<style name="MyTheme" parent="@android:style/Theme.Light.NoTitleBar">
<item name="android:alertDialogStyle">@style/AlertDialog</item>
<item name="android:progressBarStyle">@style/ProgressBar</item>
</style>
其中“progress_medium”drawable 是我的自定义(蓝色)进度条,“bgr_alert”是自定义(白色)背景。
当我显示对话框时(应用程序的主题是“MyTheme”)
@Override
protected Dialog onCreateDialog(int id) {
progressDialog = new ProgressDialog(this);
progressDialog.setCancelable(false);
progressDialog.setIndeterminate(true);
return progressDialog;
}
显示的对话框包含自定义背景(白色),但不确定的进度条不可见。
另一方面,如果我手动设置进度可绘制:
progressDialog.setIndeterminateDrawable(getResources().getDrawable(R.drawable.progress_medium));
一切都很完美 - 自定义背景和自定义进度可绘制。
任何提示,为什么主题主题没有隐式设置progressBar drawable?