在Android中需要一个类似的屏幕,即将进度指示器放在警报视图中。
答案 0 :(得分:1)
Android有ProgressDialog
可以做同样的事情,显示对话框,显示标题和消息,还显示不确定的进度指示器,但它看起来会比屏幕截图略有不同。
但是,Android文档并未建议使用ProgressDialog
来表示加载或不确定进度:
避免使用ProgressDialog
Android包含另一个名为ProgressDialog的对话框类,它显示带有进度条的对话框。但是,如果 你需要指出加载或不确定进度 而是遵循Progress & Activity的设计指南并使用 布局中的ProgressBar。
答案 1 :(得分:0)
答案 2 :(得分:0)
private static final int DIALOG_PROGRESS = 4;
private ProgressDialog mProgressDialog;
private int mProgress;
private Handler mProgressHandler;
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DIALOG_PROGRESS:
mProgressDialog = new ProgressDialog(Test.this);
mProgressDialog.setIconAttribute(android.R.attr.alertDialogIcon);
mProgressDialog.setTitle("R.string.select_dialog");
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
mProgressDialog.setMax(MAX_PROGRESS);
mProgressDialog.setButton(DialogInterface.BUTTON_POSITIVE,
"R.string.alert_dialog_hide", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
/* User clicked Yes so do some stuff */
}
});
mProgressDialog.setButton(DialogInterface.BUTTON_NEGATIVE,
"R.string.alert_dialog_cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
/* User clicked No so do some stuff */
}
});
return mProgressDialog;
}
return null;
}
/**
* Initialization of the Activity after it is first created. Must at least
* call {@link android.app.Activity#setContentView(int)} to
* describe what is to be displayed in the screen.
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
showDialog(DIALOG_PROGRESS);
mProgressHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (mProgress >= MAX_PROGRESS) {
mProgressDialog.dismiss();
} else {
mProgress++;
mProgressDialog.incrementProgressBy(1);
mProgressHandler.sendEmptyMessageDelayed(0, 100);
}
}
};
}
}
Refrence from here你应该通过Handler方法处理并轻松搞定。
答案 3 :(得分:0)
通过从布局中展开视图来创建CustomAlertDialog
。
布局应位于RelativeLayout
,以便您可以通过将属性设为ProgessDialog
和CENTER_HORIZONTAL
来放置CENTER_VERTICAL
该布局的中心。
参考:Link