在运行时将行和键添加到android中的自定义键盘
Posted
技术标签:
【中文标题】在运行时将行和键添加到android中的自定义键盘【英文标题】:Add rows and keys at run time to custom keyboard in android 【发布时间】:2017-01-06 08:22:06 【问题描述】:我正在开发一个应用程序,我需要在 Java 代码中以编程方式创建自定义键盘的行和键,而不是使用 XML。 这可能吗 ?如果是,我们如何做到这一点。
目前,我正在使用 XML 并以这种方式创建行:-
<Keyboard android:keyWidth="10.0%p"
android:keyHeight="@dimen/key_height" android:horizontalGap="0.0px"android:verticalGap="0.0px"
xmlns:android="http://schemas.android.com/apk/res/android">
<Row android:rowEdgeFlags="top" >
<Key android:codes="-21" android:keyIcon="@drawable/arbiclinenew" />
<Key android:codes="-51" android:keyIcon="@drawable/recentlinenew" />
</Row>
基本上,我需要在我的键盘上显示"recent"
视图,该视图显示用户最近选择的所有表情符号,就像在whatsapp 中一样。
请帮忙..!!!!
【问题讨论】:
【参考方案1】:最后,我可以创建自己的自定义键盘了。我们可以创建自定义键盘布局来显示最近的按钮。例如:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_
android:layout_>
<android.inputmethodservice.KeyboardView
android:id="@+id/keyboard"
android:layout_
android:layout_
android:layout_alignParentBottom="true"
android:textDirection="rtl"
android:keyPreviewLayout ="@layout/preview"></android.inputmethodservice.KeyboardView>
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_
android:layout_
/>
</FrameLayout>
现在,假设在任何按键点击时,您需要显示 emoji 或任何其他视图,那么我们可以设置键盘可见性:不可见并且可以显示您自己的布局。
【讨论】:
以上是关于在运行时将行和键添加到android中的自定义键盘的主要内容,如果未能解决你的问题,请参考以下文章
实现 TComponentEditor 的自定义 Firemonkey 组件。在设计时将子控件添加到父控件