【问题标题】:Android: show progress dialog inside class extended with DialogAndroid:在使用 Dialog 扩展的类中显示进度对话框
【发布时间】:2011-11-11 21:19:38
【问题描述】:

我有一个用 Dialog 本身扩展的类。在向服务器发送请求的对话框中有一些可用的选项。当用户单击任何此类选项时,我想显示一个进度等待对话框。

但是没有显示对话框可能是因为我在对话框中显示了一个进度对话框。

代码真的很简单。

public class LeaderBoard extends Dialog implements View.OnClickListener {
public LeaderBoard(Context context) {
        super(context, android.R.style.Theme_Black_NoTitleBar_Fullscreen);
        this.mContext = context;

        requestWindowFeature(Window.FEATURE_NO_TITLE);

        setContentView(R.layout.leaderboard);

public void onClick(View paramView) {
..............
if (this.waitDialog != null) {
            this.waitDialog.show();
        }
new Runnable() {

                    @Override
                    public void run() {

                        mHandler.post(new Runnable() {

                            @Override
                            public void run() {
                                send request to server
                                waitDialog.dismiss();
                            }
                        });

                    }
                }.run();

【问题讨论】:

标签: android progressdialog


【解决方案1】:

您好,请尝试以下代码。

public class LeaderBoard extends Dialog implements View.OnClickListener {
Activity mActivity;
private final ProgressDialog dialog;
public LeaderBoard(Activity activity) {
        super(activity, android.R.style.Theme_Black_NoTitleBar_Fullscreen);
        mActivity = activity;

        requestWindowFeature(Window.FEATURE_NO_TITLE);

        setContentView(R.layout.leaderboard);
        dialog = new ProgressDialog(mActivity);

public void onClick(View paramView) {
..............
if (this.waitDialog != null) {
            this.dialog.setMessage("Please Wait...");
            this.dialog.show();
        }
new Runnable() {

                    @Override
                    public void run() {

                        mHandler.post(new Runnable() {

                            @Override
                            public void run() {
                                send request to server
                                this.dialog.dismiss();
                            }
                        });

                    }
                }.run();

谢谢, 尼克...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    相关资源
    最近更新 更多