Android 如何从Kotlin中的TextInputLayout获取文本?
我有一个id为login\u mobile\u number的文本输入布局,我已导入此模块以停止使用Android 如何从Kotlin中的TextInputLayout获取文本?,android,kotlin,textinputlayout,Android,Kotlin,Textinputlayout,我有一个id为login\u mobile\u number的文本输入布局,我已导入此模块以停止使用findViewById方法: import kotlinx.android.synthetic.main.activity_login.* 每当我尝试通过从TextInputLayout获取文本时 val loginMobileNumberString:String = login_mobile_number.editText.toString() 它返回对象名,而不是在其中键入的字符串,如
findViewById
方法:
import kotlinx.android.synthetic.main.activity_login.*
每当我尝试通过从TextInputLayout获取文本时
val loginMobileNumberString:String = login_mobile_number.editText.toString()
它返回对象名,而不是在其中键入的字符串,如下所示:
android.support.design.widget.TextInputEditText{dfdb412 VFED..CL. .F...... 0,0-888,136 #7f0800e1 app:id/textInputEditText}
为什么会发生这种情况?从该字段获取字符串的正确方法是什么?您只需执行以下操作:
val loginMobileNumberString:String = login_mobile_number.text.toString()
此外,您不需要从文本输入布局中获取文本,他应该只关注输入的布局,正如名称中所示,您可以直接从编辑文本中进行操作。只需给它一个id并以与文本输入布局相同的方式导入即可。您只需执行以下操作:
val loginMobileNumberString:String = login_mobile_number.text.toString()
此外,您不需要从文本输入布局中获取文本,他应该只关注输入的布局,正如名称中所示,您可以直接从编辑文本中进行操作。只需给它一个id,然后以与文本输入布局相同的方式导入
val loginMobileNumberString = login_mobile_number.text.toString()
无需指定为:String
您可以使用它
val loginMobileNumberString = login_mobile_number.text.toString()
无需指定为
:String
另一种方法是将其括在引号中,使其成为字符串
val loginMobileNumberString=“${login\u mobile\u number.text}”
或者如果login\u mobile\u number
指的是TextInputLayout
val loginMobileNumberString=“${login\u mobile\u number.editText.text}”
另一种方法是将其括在引号中,使其成为字符串
val loginMobileNumberString=“${login\u mobile\u number.text}”
或者如果login\u mobile\u number
指的是TextInputLayout
val loginMobileNumberString=“${login\u mobile\u number.editText.text}”
从TextInputLayout内的TextInputItemText获取文本
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/descriptionInputLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@+id/editTextDate2"
tools:layout_editor_absoluteX="184dp">
<com.google.android.material.textfield.TextInputEditText
android:layout_width="match_parent"
android:layout_height="250dp"
android:hint="Description" />
</com.google.android.material.textfield.TextInputLayout>
从TextInputLayout中的TextInputText获取文本
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/descriptionInputLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@+id/editTextDate2"
tools:layout_editor_absoluteX="184dp">
<com.google.android.material.textfield.TextInputEditText
android:layout_width="match_parent"
android:layout_height="250dp"
android:hint="Description" />
</com.google.android.material.textfield.TextInputLayout>
如果
editText
是editText
则editText.text.toString()
如果editText
是editText.text.toString()
则editText.toString()
最后一个“.toString()”转换为字符串,例如span将字符串转换为字符串,以便比较字符串。最后一个“.toString()”转换为字符串,例如SpannableString to string,它允许您比较字符串。