为什么你无法从Android中的EditText小部件中检索文本?

时间:2013-11-30 00:44:54

标签: android android-widget widget android-edittext android-studio

为什么你无法从Android中的EditText小部件中检索文本?即使在Android开发人员指南中,他们就像一个例子一样游戏 http://developer.android.com/guide/topics/ui/dialogs.html 它们实际上是一种方式吗? Becasue我想创建一个简单的登录对话框,程序必须检查用户输入的登录信息我该怎么办?

2 个答案:

答案 0 :(得分:1)

以下是在自定义对话框中从EditText获取文本的方法。

  AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
  // Get the layout inflater, and inflate the dialog's view (which contains the EditText)
  LayoutInflater inflater = getActivity().getLayoutInflater();
  View dialogView = inflater.inflate(R.layout.dialog_signin, null);

  // Keep a reference to the EditText you can use when the user clicks the button
  final EditText editText = (EditText) dialogView.findViewById(R.id.my_edit_text);

  // Inflate and set the layout for the dialog
  builder.setView(dialogView)
      // Add action buttons
      .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int id) {
          // The user clicked 'ok' or 'sign-in' - now you can get the text from the EditText
          String textFromEditText = editText.getText().toString();
        }
      });
  // Build & show the dialog
  builder.create().show();

答案 1 :(得分:0)

  

为什么你无法从Android中的EditText小部件中检索文本?

getText()窗口小部件上调用EditText以检索文本。它将以CharSequence的形式返回,从技术上讲,我认为是SpannedString的一个实例。如果您不期望任何格式化,请在其上调用toString()以获取纯字符串。