Java Android AlertDialog全局变量使用

Java Android AlertDialog全局变量使用,java,android,android-alertdialog,Java,Android,Android Alertdialog,我面临一个奇怪的问题。在我的一个活动类中,有一个对象名“term”定义为全局变量。我在显示警报对话框的方法中使用此变量。假设我首先将标题设置为123 term.setTitle("123"); 然后显示警报对话框。显示警报对话框的代码为: private void displayNoteDialog() { final CharSequence[] items = { AgileFlashCardConstants.CREATE_NEW_NOTE,

我面临一个奇怪的问题。在我的一个活动类中,有一个对象名“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第一次显示后将其关闭。但似乎没有帮助。不确定我在这里遗漏了哪一块拼图。

我想我需要更多的代码,只要调用
displayNoteDialog()
以及调用
term.setTitle()
。我能想到的唯一一个想法是,对话框保持内存,并在方法中调用范围为final的变量。尝试设置断点或使用变量数据写入日志。在您的代码中,我没有看到您更新了全局变量。