android - 从 XML 将输入类型设置为 TextInputEditText
问题描述
我正在使用这个com.google.android.material.textfield.TextInputLayout来编辑文本。
问题是当我尝试从 XMl 设置这个android:inputType="textCapSentences"时它不起作用但是当我以编程方式设置它时它正在工作。
那个属性有什么问题?
代码:
<com.google.android.material.textfield.TextInputLayout
android:layout_width="0dip"
android:layout_weight="0.4"
android:id="@+id/tilFPCode"
app:errorTextAppearance="@style/style_EditText_ErrorStyle"
app:hintTextAppearance="@style/style_EditText_HintStyle"
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="1"
android:maxLength="5"
android:id="@+id/etFPCode"
android:imeOptions="actionDone"
android:inputType="textCapCharacters"
android:textAllCaps="true"
android:hint="@string/forgot_sec_code_hint"
style="@style/style_EditText"/>
</com.google.android.material.textfield.TextInputLayout>
解决方案
您必须android:inputType="textCapSentences"
像这样直接在编辑文本中应用:
<android.support.design.widget.TextInputLayout
android:id="@+id/XXX"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.design.widget.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textCapSentences"
/>
</android.support.design.widget.TextInputLayout>
你也可以用 EditText 替换 TextInputEditText
推荐阅读
- sql - 从打包的 .NET 工具运行请求时查询超时已过期
- entity-framework - .net core 2.1 中的实体框架支持
- django - Django - 表单的 ChoiceField 没有立即更新
- arrays - Swift:通过方法传递数组时遇到问题
- linux - 如何调试使用 perl 生成的核心文件?
- javascript - 无法读取未定义的属性“登录” - 测试间谍 - Angular2 +
- sockets - yii2 中的 Socket 编程为移动应用程序提供 Web 服务支持
- ubuntu-14.04 - 如何使用覆盖运行 --source = {dir_name}
- google-bigquery - bigquery 中的 jsonpath 不支持 @ 过滤。对替代品的建议?
- php - 如何使用php将普通数组转换为关联数组