Android AlertDialog全局变量使用

时间:2012-10-12 00:02:46

标签: java android alertdialog android-alertdialog

我面临一个奇怪的问题。我在一个Activity类中定义了一个对象名称“term”作为全局变量。我在显示警告对话框的方法中使用此变量。假设我首先将标题设置为123。

term.setTitle("123");

然后我显示警告对话框。显示警告对话框的代码是:

private void displayNoteDialog() {
    final CharSequence[] items = {
            AgileFlashCardConstants.CREATE_NEW_NOTE, 
            AgileFlashCardConstants.SHOW_CUSTOM_NOTE,
            AgileFlashCardConstants.EDIT_FLASH_CARD + " - " + term.getTitle()
            };

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Note Options");
    builder.setItems(items, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int item) {
            if(AgileFlashCardConstants.CREATE_NEW_NOTE.equals(items[item]))  {
                createNewNote(); 
            } else if(AgileFlashCardConstants.SHOW_CUSTOM_NOTE.equals(items[item])) {
                displayCustomNoteDialog();
            } else if(AgileFlashCardConstants.EDIT_FLASH_CARD.equals(items[item])) {
                editFlashCard();

            }

        }



    });

    builder.setPositiveButton("Close", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
            dialog.cancel();
        }
    });
    builder.setIcon(R.drawable.note_icon);

    AlertDialog alert = builder.create();
    alert.show();

显示并关闭警告对话框后,我的应用程序会修改“字词”以使其具有不同的标题。

term.setTitle("ABC");

问题是下次再次显示AlertDialog时,它不会从修改后的全局对象中选择值。它继续显示最初传递的'term'对象的值。 (在这种情况下'123')

我第一次出现后试图解除AlertDialog。但似乎没有帮助。不知道我在这里错过了哪一块拼图。

0 个答案:

没有答案