如何访问由 AlertDialog.Builder 构建的 AlertDialog 的消息?

pho*_*ong 2 android dialog android-alertdialog

我有这个 AlertDialog 和 AlertDialog.Builder:

    String message = "A message";
    AlertDialog.Builder dBuilder = new AlertDialog.Builder(this);
    dBuilder.setMessage(message);
    ....
    AlertDialog myDialog = dBuilder.create();
Run Code Online (Sandbox Code Playgroud)

现在我正在编写一个单元测试,需要测试对话框的消息。我如何访问该消息?

小智 7

试一试。不使用 dBuilder.create() 初始化 myDialog,而是使用构建器的构造:

String message = "A message";
AlertDialog.Builder dBuilder = new AlertDialog.Builder(this);
AlertDialog myDialog = dBuilder
              .setMessage(message)
              .show();
TextView messageTextView = (TextView)myDialog.findViewById(android.R.id.message);
String dialogMessage = messageTextView.getText();
Run Code Online (Sandbox Code Playgroud)