Android对话问题

时间:2011-07-06 09:00:14

标签: android dialog

当我按下带有动态数据的按钮时,我会出现一个对话框,但是当我再次按下相同的按钮时,会出现相同的数据。我使用日志找出为什么下一个问题没有显示有一个警告“Window已经集中忽略焦点“下面是代码

protected Dialog onCreateDialog(int id)
{ AlertDialog.Builder dilog = new AlertDialog.Builder(this); 

switch (id)

    {

        case 99:
                String qa = showNext(); //gets question from database new  question  every time   

                dilog.setTitle("Team A player" + contactList.get(1).getName());
                dilog.setMessage(qa);

                dilog.setNegativeButton("ok", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int id)
                    {

                        dialog.cancel();
                    }   
                });

            break;

        }
        return dilog.create();


        }

2 个答案:

答案 0 :(得分:1)

每次用户按下按钮时,使用onPrepareDialog(int id, Dialog dialog)方法更新对话框的数据。

答案 1 :(得分:1)

您可以创建对话框并在onCreateDialog()中设置其数据。 如果系统没有提供的对话框ID的对象,系统将调用此方法。 一旦创建,就永远不会再被调用。您必须使用Activity.onPrepareDialog()内的最新数据修改现有对话框。这个警告并不重要,你可以忽略它。