【问题标题】:Android Show ProgressDialog onClick of AlertDialogAndroid Show ProgressDialog onClick 的 AlertDialog
【发布时间】:2012-12-07 02:35:29
【问题描述】:

我试图在 AlertDialog 的 onClick 事件中显示 ProgressDialog,代码有效,但 ProgressDialog 似乎卡在了 AlertDialog 后面,这不符合要点

public class MainActivity extends Activity
{
    @Override
    public void onCreate(Bundle savedInstanceState)
        {
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Title").setMessage("Message").setPositiveButton("Yes", new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {

                    ProgressDialog pd = ProgressDialog.show(MainActivity.this, "Title", "Text", true, false);

【问题讨论】:

  • 为什么不关闭警报对话框?
  • 试过了,似乎不起作用,因为 onClick 事件它似乎将 AlertDialog 放在前面,如果有人有办法以任何方式使这项工作更好,我会很高兴看看吧。
  • 有问题,查看我的答案。

标签: android android-alertdialog progressdialog onclicklistener


【解决方案1】:

这种方法怎么样?

AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("Title").setMessage("Progress?");
        builder.setPositiveButton("Yes", new OnClickListener() {

            @Override
            public void onClick(DialogInterface alertDialog, int which) {
                // TODO Auto-generated method stub
                alertDialog.dismiss();
                showProgressDlg();
            }
        });
        builder.show();

public void showProgressDlg()
    {
        ProgressDialog pDialog = new ProgressDialog(context);
        //All pd properties...
    }

【讨论】:

  • 我已经尝试了所有想到的方法,这也不起作用,您愿意通过 teamviewer 和我一起看一下代码,我需要一些认真的帮助。
【解决方案2】:

旧帖子,但我今天早上遇到了问题。

我试图把它放在this.runOnUiThread(...) 中,但没有效果。 我尝试使用this/MyActivity.this 的副本,但没有。

诀窍(我不明白原因):创建您的 ProgressDialog 类属性,不要从您的 AlertDialog onClick 调用的方法中定义它。

private ProgressDialog pDialog;

我的情况正是你的情况,现在可以了。 也许它会帮助某人。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-10
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多