簡體   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