1

我在这些方面遇到了很大的困难。当我将我的课程放在选项卡组中时,我无法调用我的对话框。无论如何我可以做到这一点吗?

这是我的对话创建者

      @Override
  protected Dialog onCreateDialog(int id) {

      switch (id) {
          case 1:
              return createDialog();
          default:
              return null;
      }
  }
  @Override
  protected void onPrepareDialog(int id, Dialog dialog) {

      switch (id) {
          case 1:
              // Clear the input box.
              EditText text = (EditText) dialog.findViewById(TEXT_ID);
              text.setText(textme);
              text.setKeyListener(null);
              break;
      }
  }
  private Dialog createDialog() {

      AlertDialog.Builder builder = new AlertDialog.Builder(SpecialofMonth.this);
       final EditText input = new EditText(this);
       input.setId(TEXT_ID);
       builder.setView(input);


      builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
          public void onClick(DialogInterface dialog, int which) {
              return;
          }
      });
      return builder.create();
  }

在按钮单击时调用它

    View.OnClickListener handlesReadme = new View.OnClickListener() {
    public void onClick(View v) {

        showDialog(1);

    }
  };

当它在选项卡组之外时,它可以工作。但反之亦然,或者当它在里面时,它不起作用..

你能帮我吗?

4

1 回答 1

2

在您的 TAB 组中像这样创建

 AlertDialog.Builder builder = new AlertDialog.Builder(SpecialofMonth.this.getParent());
于 2012-09-27T05:25:13.317 回答