为什么在ICS中我的ProgressDialog不像自定义ProgressDialog?

Svi*_*lav 0 android styles progressdialog android-4.0-ice-cream-sandwich

我用android ver在Transformer Prime 201上安装了我的.apk .4.0.3但是ProgressDialog看起来不像设备上的自定义ProgressDialog.

为什么会这样?在设备上使用自定义ProgressDialog样式的代码中,我必须更改哪些内容?

ProgressDialog progressDialog = new ProgressDialog(this.context);
progressDialog.setIndeterminate(true);
progressDialog.setCancelable(true);
progressDialog.setOnCancelListener(this);
progressDialog.setCanceledOnTouchOutside(false);
progressDialog.setMessage(MESSAGE);
progressDialog.show();
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 在此输入图像描述

Ser*_*ode 5

上面接受的答案是有效的,但它的方法就像用大锤敲碎花生一样.你会破坏螺母,但也可能会损坏螺母下面的桌子.改变整个应用程序的主题只是为了改变一个进度对话框的外观是没有意义的.

更好的解决方案是保持应用程序的主题不变,只需更改进度对话框的主题即可.您可以使用以下代码在所有Android版本上查看Gingerbread进度对话框.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
    dialog = new ProgressDialog(yourActivity, AlertDialog.THEME_TRADITIONAL);
else
    dialog = new ProgressDialog(yourActivity);
Run Code Online (Sandbox Code Playgroud)