我希望在Android中实现手机键盘和键盘。根据我的要求,当选择EditText
时,应显示默认的手机键盘。但是用户也必须能够输入字母表。请建议我实现这个的方法。
<EditText
android:id="@+id/editTextref1"
android:layout_width="210dp"
android:layout_height="45dp"
android:layout_alignParentRight="true"
android:layout_marginTop="10dp"
android:ellipsize="start"
android:hint="@string/custom1"
android:imeOptions="actionNext|actionDone"
android:inputType="text"
android:nextFocusDown="@+id/editTextref2"
android:shadowDy="10"
android:textColor="#383838"
android:textSize="14sp"
android:textStyle="bold"
android:maxLength="15"
android:typeface="serif" />
答案 0 :(得分:1)
我想假设以简单而优雅的方式做到这一点是不可能的。问题是您输入的类型为InputType.TYPE_CLASS_TEXT
,并且无法更改为InputType.TYPE_CLASS_NUMBER
,因为您还需要输入字母。
问题是输入法检查输入的类型,并根据字段输入类型的类型为您提供带数字或字母的相应键盘。如果您要求输入法为您提供数字键盘并且您的EditText
处于焦点,则无法强制输入法切换到代码中的字母键盘。我可能错了,但这就是我的想法。
问题是,在编辑文本时是否可以要求任何第三方输入法为您提供不同的键盘 - 我认为您不能在代码中执行此操作。输入法将根据您的EditText
为您提供数字或字母,但您无法动态切换它们,因为输入法无法识别您的设计问题。唯一的方法是创建自己的输入法,允许您动态切换数字和字母键盘。