从类实例中显示AlertDialog

时间:2014-11-11 23:02:19

标签: android class dialog alertdialog builder

我已经基于一个正式的Android示例创建了一个单独的消息弹出类,但我无法弄清楚如何从另一个活动启动此对话框。弹出类是:

public class PopupMessage extends DialogFragment {

    String message = "";

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {


        // Use the Builder class for convenient dialog construction
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setMessage(message)
               .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int id) {
                     //
                   }
               });
        // Create the AlertDialog object and return it
        return builder.create();
    }
} 

在我的其他课程中,我创建了一个实例:

import com.mcsapp.PopupMessage;
private PopupMessage popup;
popup = new PopupMessage();

单击按钮时我想调用它。我有这个:

case R.id.chooseLocationButton: 

            if(editTextLocation.getText().toString().equals("")) {
                popup.message = "Test";
                popup.getDialog().show();
                }

            break;
        }

我尝试过各种“弹出”命令,但都会导致崩溃。我确定它只是我找不到正确的代码。 “message”参数设置得很好,因此导入工作正常。

谢谢

1 个答案:

答案 0 :(得分:2)

popup.show(getFragmentManager()," PopupMsgFragment");

如果您使用支持v4活动,可能需要使用getSupportFragmentManager()更改getFragmentManager()。