[英]How to make EditText not empty?
我有一個 editText 和按鈕。 EditText 用於用戶名。 我有問題,我的代碼如下。
String fullname = editText.getText().toString();
if (TextUtils.isEmpty(fullname)){
Toast.makeText(this, "Name should not be empty", Toast.LENGTH_SHORT).show();
我的問題是當用戶點擊按鈕而不放置任何東西時,吐司消息顯示; 這很好,但是當用戶放置空間時,它會將全名值存儲為空。 我不想要空值。
您應該修剪輸入: fullname.trim().isEmpty()
以去除前導和尾隨空格。 所以如果你有一個只有空格的輸入,它會認為它是空的。
當文本無效時,我會禁用該按鈕。 最好盡早驗證而不是過早地允許操作。 也可以使用TextWatcher
修改用戶輸入以刪除無效空格等。
<EditText
android:id="@+id/editText"
android:layout_margin="16dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"/>
<Button
android:id="@+id/button"
android:layout_margin="16dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@android:string/ok"/>
在活動或片段中:
editText.addTextChangedListener(
object : TextWatcher {
override fun afterTextChanged(s: Editable) {
button.isEnabled = s.trim().isNotEmpty()
}
override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) {}
}
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.