繁体   English   中英

如果在 Android Studio 中有一个或多个为空,如何从多个 editText 中获取数据并显示在 textView 中?

[英]How to get data from multiple editText and show in textView if one or more is empty in Android Studio?

在我的应用程序中有两个名为nameage的 EditText,一个名为showData的 TextView 和一个 Button。 基本上我想要做的是当用户在 EditText 中输入数据并单击按钮时,TextView 将像这样显示 output

我的名字是name
我今年age

所以为了做到这一点,我在setOnClickListener中使用了If Else并编写了这样的代码,


if (name.isEmpty() && age.isEmpty()) {
    showData.setText(null);
}


else if (age.isEmpty()) {
    showData.setText("My name is " + name);
}

else if (name.isEmpty()) {
    showData.setText("I'm " + age + " years old");
}

else{
    showData.setText("My name is " + name + 
                     "\n I'm " + age + " years old");
}

我是 Java 和 Android Studio 的初学者,所以对那里的事情感到困惑。 如果您能告诉我如何使用更少的代码使该应用程序在标准编程中运行,那就太好了。 我的意思是,如果 editText 为空,textView 将不会显示任何与之相关的数据。

例:如果用户只输入姓名 textView 将显示My name is name only。 或者,如果用户仅输入年龄 textView 将仅显示我的age 或者如果用户同时提供 textView 将显示两者

这可能是 Java 中的适当解决方案(希望我没有编写错字,因为我直接在 SO 窗格中键入):

StringBuilder sb = new StringBuilder();
if (!age.isEmpty()) {
    sb.append("My name is " + name);
}

if (!name.isEmpty()) {
  if (sb.length() != 0) {
    sb.append("\n");
  }
  sb.append("I'm " + age + " years old");
}

showData.setText(sb.toString());

顺便说一下,如果您使用的是 Kotlin,那就更好了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM