此键盘只有应用程序可以使用的键,所以我不想弹出手机键盘来显示所有不必要的字符。在相对布局内部,我有一个包含imageButtons的线性布局。它会留在应用程序上,所以它不能像普通键盘一样消失。这是我的xml:
我想要获得的内容:当用户点击EditText框时,我不想让手机的键盘弹出,我只是想要能够使用imageButtons编辑文本。谢谢!
我理解我必须为每个按钮创建一个onclicklistener。是否有更简单的方法来实现这一结果?谢谢你的帮助。
<LinearLayout
android:id="@+id/layout_button_keyboard"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
>
<ImageButton
android:id="@+id/imageButton_a"
android:layout_width="50dp"
android:layout_height="50dp"
android:background="@drawable/button_a"
android:layout_marginTop="20dp"/>
<ImageButton
android:id="@+id/imageButton_b"
android:layout_width="50dp"
android:layout_height="50dp"
android:background="@drawable/button_b"
android:layout_marginTop="20dp"/>
<ImageButton
android:id="@+id/imageButton_c"
android:layout_width="50dp"
android:layout_height="50dp"
android:background="@drawable/button_c"
android:layout_marginTop="20dp"/>
<ImageButton
android:id="@+id/imageButton_d"
android:layout_width="50dp"
android:layout_height="50dp"
android:background="@drawable/button_d"
android:layout_marginTop="20dp"/>
<ImageButton
android:id="@+id/imageButton_e"
android:layout_width="50dp"
android:layout_height="50dp"
android:background="@drawable/button_e"
android:layout_marginTop="20dp"/>
<ImageButton
android:id="@+id/imageButton_f"
android:layout_width="50dp"
android:layout_height="50dp"
android:background="@drawable/button_f"
android:layout_marginTop="20dp"/>
</LinearLayout>
答案 0 :(得分:0)
使用KeyboardView:
KeyboardView kbd = new KeyboardView(context);
kbd.setKeyboard(new Keyboard(this,R.xml.custom));
kbd.setOnKeyboardActionListener(new OnKeyboardActionListener(){
}
现在你有kbd这是一个普通的视图。
关于这个的好处是R.xml.custom引用了/res/xml/custom.xml,它在xml中定义了键盘的布局。