具有自定义布局的 Android 对话框 : returning data

标签 android layout dialog

我在获取数据时遇到问题,用户在 dialog(使用自定义布局)中输入。看代码:

单元.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
</EditText>
</RelativeLayout>

代码:

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    LayoutInflater inflater = this.getLayoutInflater();
    builder.setView(inflater.inflate(R.layout.unit, null)); 
    AlertDialog dialog = builder.create();
    dialog.show();

对话框 以我创建的布局打开,但是

    builder.setPositiveButton("Add", new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
                        EditText text = (EditText)findViewById(R.id.editText1);
                        Toast.makeText(getApplicationContext(), text.getText(), Toast.LENGTH_SHORT).show();
            dialog.dismiss();
          }

        });

产生运行时错误:java.lang.NullPointerException。问题出在哪里?

最佳答案

用这个..

 builder.setPositiveButton("Add", new DialogInterface.OnClickListener() {
      @Override
      public void onClick(DialogInterface dialog, int which) {
                    EditText text = (EditText) dialog.findViewById(R.id.editText1);
                    Toast.makeText(getApplicationContext(), text.getText(), Toast.LENGTH_SHORT).show();
        dialog.dismiss();
      }

    });

关于具有自定义布局的 Android 对话框 : returning data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14102839/

相关文章:

android - 在谷歌地图上显示多个点

android - 在 RxJava 中观察一个基本的自定义事件

templates - 同一 symfony 应用程序中不同 View 的不同布局

checkbox - 请求对话框复选框选项 "don' 发送前询问...”

mvvm - 使用MVVM Light工具箱显示对话框

java - 如何为我的整个应用程序设置默认手机字体

c# - 标签大小总是 NaN?

html - 如何在每次更改为不同分辨率时保持容器大小不变?

dialog - DM 中是否有不会阻塞整个程序的对话框窗口?

android - 警告会导致 Android 应用程序出现问题吗?