Listview的自定义键盘

时间:2016-05-03 08:39:00

标签: android listview keyboard

我目前正在尝试将自定义键盘添加到由ArrayAdapter动态填充的列表视图中。

我的视图层次结构如下所示:一个活动,其顶部栏(自制,为LinearLayout),在FrameLayout下方,其中包含5个碎片中的一个,以及(可选)下方的底栏(可能与LinearLayout一样)好。)

我的问题是将键盘视图放在xml中的位置,因为我相信,当我将它放在activity.xml中时,它隐藏在列表视图的后面。将其添加到列表视图片段也是不可能的,因为“引起:java.lang.UnsupportedOperationException:AdapterView中不支持addView(View,LayoutParams)”。

这就是我要添加的代码(为了清楚起见,一切都在我创建的示例应用程序中,只有一个活动)

<android.inputmethodservice.KeyboardView
   android:id="@+id/keyboardview"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:layout_alignParentBottom="true"
   android:layout_centerHorizontal="true"
   android:focusable="true"
   android:focusableInTouchMode="true"
   android:visibility="gone" 
/>

Activity.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@color/white"
>
<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/layout_top">
    <!-- MY TOP BAR ELEMENTS HERE

</LinearLayout>

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:id="@+id/main_fragment">
    <!-- SPACE FOR FRAGMENT HERE -->
</FrameLayout>

<LinearLayout>
   <!-- SPACE FOR BOTTOM BAR HERE -->
</LinearLayout>

</LinearLayout>

fragment.xml之

<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white"
    android:id="@+id/feuchterechner_fragment"
    android:inputType="numberDecimal"
>

如上所述,ListView通过ArrayAdapter填充。问题:我在哪里放置keyboardView xml?

提前致谢!

0 个答案:

没有答案