【问题标题】:When I create a dialog upon a Button click, I get an error. How can I show a dialog upon a Button click?当我在单击按钮时创建对话框时,出现错误。如何在单击按钮时显示对话框?
【发布时间】:2014-02-10 12:42:08
【问题描述】:

当我在单击按钮时创建对话框时,出现错误。如何在单击按钮时显示对话框?

我的主类扩展了 Activity。

            deleteentry.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    new deleteOptionsDialog(getApplicationContext()).show();
                }
            });
    public class deleteOptionsDialog extends Dialog {

            public deleteOptionsDialog(final Context context) {
                super(context, android.R.style.Theme_Translucent);

                requestWindowFeature(Window.FEATURE_NO_TITLE);
                setContentView(R.layout.delete_options_dialog);

                RelativeLayout cameraLayout = (RelativeLayout) findViewById(R.id.rldelete);
                cameraLayout.setOnClickListener(new View.OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        // TODO Auto-generated method stub

                    }
                });

            }

【问题讨论】:

标签: android android-dialog


【解决方案1】:

替换

new deleteOptionsDialog(getApplicationContext()).show();

new deleteOptionsDialog(YourActivity.this).show();

并尝试通过覆盖将Constructor 中的所有代码移动到DialogonCreate() 方法。

【讨论】:

    【解决方案2】:

    尝试使用new deleteOptionsDialog(YourCurrentActivity.this).show(); 在创建dialog时使用getApplicationContext()的问题

    【讨论】:

    • 我正在使用 CurrentActivity.this 我没有得到它
    • 可以发布异常的logcat数据吗?
    【解决方案3】:

    对于Dialog 实例,您应该使用活动上下文,而不是getApplicationContext()getApplication(),而是YourActivity.this

    最好在 onCreate() 中的某处实例化对话框,然后在尝试再次显示时检查它是否正在显示

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-12
      • 2013-04-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多