我尝试以大写的第一个字母开头。 使用attr inputType
<EditText
android:id="@+id/add_user_fname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="@dimen/margin_size_small"
android:inputType="textCapSentences|textPersonName"
android:capitalize="sentences"
android:layout_toRightOf="@id/user_avatar"
android:hint="@string/add_user_fname"
android:maxLength="@integer/name_max_length"
android:singleLine="true"
android:textSize="@dimen/text_size_small" />
并在代码中设置
userFnameEditText.setInputType(InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);
但没有任何作用。 所有这些都放在DialogFragment中。
更新 我在代码中删除了setInputType,只设置了inputType =&#34; textCapSentences&#34;。它适用于Android 4,但不适用于Samsung Android 5
答案 0 :(得分:2)
<强>被修改强> 在你的java文件中试试
TextView txtCapitalize = (TextView) findViewById(R.id.txtCapitalize);
txtCapitalize.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_WORDS);
答案 1 :(得分:2)
我遇到了同样的问题。但是,我找到了一个可以帮助我的解决方案:确保在键盘设置上检查“自动大写”设置。这适用于Nexus 4.
答案 2 :(得分:1)
您应该在EditText
中添加此行以填充您的字母android:inputType="textCapSentences"
我希望这会有所帮助。 THANKYOU
答案 3 :(得分:0)
试试这个:
android:inputType="textCapSentences"
和
android:capitalize="sentences"
从xml中删除textPersonName
。
答案 4 :(得分:0)
如果你同时添加
android:capitalize="sentences"
和android:inputType="text"
,在这种情况下,它先占用,输入不会被捕获。
android:inputType="textCapSentences"
答案 5 :(得分:0)
通知您start
已被弃用,因此,正如其他答案所示,您可以使用
android:capitalize="sentences"
或强>
android:inputType="textCapSentences"
两者都有效!但是一个用于android:inputType="textCapWords"
,一个用于sentence
。