android - 为什么要使用 TYPE_TEXT_VARIATION_PERSON_NAME (textPersonName)

标签 android android-layout

我这里有一个 EditText,它是我从 dialog example 复制的. textPersonName然而并没有像我期望的那样大写,这是在他们名字中的每个单词之前将键盘放入大写。我发现自己在使用 textCapWords实现这一目标。

   <EditText
        android:id="@+id/player_edit"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="textPersonName" >
    </EditText>

textPersonName 的意义何在?切换到 textCapWords 时我可能会失去什么?我认为 textPersonName 背后可能有一些语言环境逻辑,但它似乎甚至无法像我预期的那样在英语中工作,所以我不太确定。

编辑

我也试过 android:inputType="textCapWords|textAutoComplete|textPersonName" 看看它是否会自动完成人名,但它似乎没有。

最佳答案

如果您停止使用它,您不会失去任何东西。目前 Android 根本不使用这个标志。至少我查了最新Android的源码,并没有发现widgets中有这个参数的提及。

这可能会在未来的 Android 版本中使用,所以我会保留它以防万一,但没有它你也可以。

关于android - 为什么要使用 TYPE_TEXT_VARIATION_PERSON_NAME (textPersonName),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16881987/

相关文章:

android - 如何从 EditText 中删除所有默认填充?

android - 在android中创建带有两侧弯曲角的矩形可绘制对象

java - 在没有 loadUrl 或 XHR 的情况下在 android.webkit.WebView 中执行 javascript 代码

android - 如何在 Kotlin Android 中为数据类创建空构造函数

android - 解决android :gravity and android:layout_gravity之间的冲突

android - 如果文本比 View 长,动态 TextView 不会选取框

android - 如何更改扩展 float 操作按钮的形状?

android - Android App在Android 5之前的设备上崩溃

android -- 如何使用 achartengine -steps

Android 在应用程序运行时禁用屏幕超时