android - RecyclerView EditText - 检查它是否有值或为空
问题描述
我目前EditText
在RecyclerView
.
场景是:用户在 item(n) 上只填写了 2/4 的EditText
s 并继续到 item(n),填写了 item(n) 上的所有内容并单击提交按钮。
应该有一个消息对话框,其中有一个EditText
尚未填写。
我怎么知道EditText
每件物品上还有剩余的东西没有被填满?
@Override
public void onBindViewHolder(final CreditCard_PostPayAdapter.MyViewHolder holder,int position) {
final int pos = position;
//final AccountDetailsItem accountDetailsItem = accountDetailsItemList.get(position);
button.setOnClickNewListener(new onClickListener)
{
//Checks if edittext1,edittext2,editext3,edittext4 of item(n)/item(pos) have value or null.
//if all edittext in item(n) have values then proceed to the next item.
}
}
public class MyViewHolder extends RecyclerView.ViewHolder {
public ediText editText1,editText2,editText3,editText4
public ImageButton mDeleteButton;
public MyViewHolder(View view) {
super(view);
this.editText1 = view.findViewByiId(myedittext1);
this.editText2 = view.findViewByiId(myedittext2);
this.editText3= view.findViewByiId(myedittext3);
this.editText4 = view.findViewByiId(myedittext4);
}
}
XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/card_overflow"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/item_ripple"
android:clickable="true"
android:focusable="true"
android:foregroundGravity="center_horizontal"
android:orientation="vertical"
>
<ScrollView
android:layout_width="match_parent"
android:fillViewport="true"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="wrap_content">
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:background="#ffffff"
android:layout_width="match_parent"
android:layout_height="50dp">
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginLeft="8dp"
android:id="@+id/mDeleteButton"
android:background="@android:color/transparent"
android:src="@drawable/btn_delete_documentpic"/>
<TextView
android:id="@+id/header_title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical"
android:layout_marginTop="15dp"
android:text="@string/lorem_ipsum_short"
android:textColor="@color/aub_red_new"
android:textSize="20sp"
android:layout_marginLeft="4dp"
android:textStyle="bold" />
<ImageView
android:layout_weight=".2"
android:src="@drawable/ic_up_black"
android:layout_width="0dp"
android:padding="12dp"
android:layout_height="50dp"
android:id="@+id/arrow_indicator"/>
</LinearLayout>
<View
android:id="@+id/mHeaderDivider"
android:layout_width="match_parent"
android:layout_height=".8dp"
android:alpha="0.8"
android:layout_marginBottom="16dp"
android:background="#CACACA"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/mBodyLinear"
android:orientation="vertical">
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:layout_marginTop="16dp"
app:counterTextAppearance="@style/counterText"
app:counterOverflowTextAppearance="@style/counterOverride"
app:theme="@style/TextInputLayoutGold">
<android.support.design.widget.TextInputEditText
android:id="@+id/mMerchantNameTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:textSize="@dimen/font_size"
android:inputType ="numberDecimal"
app:theme="@style/EditTextGold"
android:hint="@string/label_merchant_name"
/>
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
app:counterTextAppearance="@style/counterText"
app:counterOverflowTextAppearance="@style/counterOverride"
app:theme="@style/TextInputLayoutGold">
<android.support.design.widget.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:textSize="@dimen/font_size"
android:inputType ="numberDecimal"
app:theme="@style/EditTextGold"
android:hint="@string/hint_transaction_amount"
/>
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:layout_marginTop="16dp"
app:counterTextAppearance="@style/counterText"
app:counterOverflowTextAppearance="@style/counterOverride"
app:theme="@style/TextInputLayoutGold">
<android.support.design.widget.TextInputEditText
android:id="@+id/mMerchantNameTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:textSize="@dimen/font_size"
android:inputType ="numberDecimal"
app:theme="@style/EditTextGold"
android:hint="@string/label_merchant_name"
/>
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
app:counterTextAppearance="@style/counterText"
app:counterOverflowTextAppearance="@style/counterOverride"
app:theme="@style/TextInputLayoutGold">
<android.support.design.widget.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:textSize="@dimen/font_size"
android:inputType ="numberDecimal"
app:theme="@style/EditTextGold"
android:hint="@string/hint_transaction_amount"
/>
</android.support.design.widget.TextInputLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
</LinearLayout>
解决方案
我不知道你在找什么,但你可以这样做:
String editTextStr = editText.getText().toString();
if (editTextStr.equals(""))
{
// editText is empty
}
为您的每个EditText
s 检查它们是否为空。
如果你想要一个boolean
if anEditText
为空的值,你可以尝试:
boolean isEditTextEmpty = editText.getText().toString().isEmpty();
推荐阅读
- java - 如何将带有retrofit2的文件发送到服务器
- html - 如何使用 Form-Array 在 Angular 中创建用于多个图像上传的容器
- php - Laravel 8 Php Redis 错误
- testing - 在 Katalon Recorder 中验证颜色
- php - Woocommerce 产品数据导出 NULL 数据
- javascript - html js css 数学函数
- c++ - C++:使用索引访问类成员的最佳方式
- oracle - 我的 Oracle 云实例上的 SSH 权限被拒绝(公钥)
- linux - ausyscall 无法提取新的系统调用
- javascript - 如何在 JS 中直接调用控制器内部的路由配置,而不是从 html a href on-click