Барри

аюсь сделать ListViewв моем IME «плавать» в середине экрана, как клавиатура Swype:

Я читал, как сделать это в Activity, используя FrameLayout, но он не работает в моем IME, который является Сервисом, а не Activity. Мое входное представление состоит из FrameLayout в качестве корневого представления, дочернего RelativeLayout, содержащего несколько элементов управления, и ListView, который также является дочерним для FrameLayout. Вот мой код компоновки:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent" 
              android:layout_height="wrap_content"
              android:layout_gravity="bottom" 
              android:gravity="center_horizontal" >

    <!-- Most of the controls are children of this RelativeLayout -->
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                  android:layout_width="fill_parent" 
                  android:layout_height="wrap_content"
                  android:gravity="center" >

        <Button android:id="@+id/btnOption1"
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content"
                android:layout_marginRight="10dp" 
                android:layout_alignParentLeft="true"
                android:layout_toLeftOf="@+id/imgArrow"
                android:layout_marginTop="10dp" 
                android:textSize="18dp"
                android:textColor="#ffffff"
                android:background="@drawable/button"
                android:padding="4dp"
                android:text="Option 1" />

        <ImageView android:id="@id/imgArrow"
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content"
                android:layout_marginRight="10dp" 
                android:layout_centerHorizontal="true"
            android:layout_alignBottom="@id/btnOption1"
                android:layout_marginTop="10dp" 
                android:padding="4dp"
                android:src="@drawable/arrow_right" />

        <Button android:id="@+id/btnOption2"
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_toRightOf="@id/imgArrow"
                android:layout_marginTop="10dp" 
                android:textSize="18dp"
                android:textColor="#ffffff"
                android:background="@drawable/button"
                android:padding="4dp"
                android:text="Option 2" />

    <!-- Translate button -->
    <Button android:id="@+id/btnContinue"
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_below="@id/imgArrow"
            android:layout_marginTop="10dp" 
            android:layout_marginBottom="10dp" 
            android:textSize="22dp"
            android:textColor="#ffffff"
            android:background="@drawable/button"
            android:text="Translate!" />

        <!-- Keyboard button -->
        <ImageButton android:id="@+id/btnKeyboard"
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_below="@id/btnContinue"
                android:layout_marginRight="4dp" 
                android:textColor="#ffffff"
                android:background="@drawable/button"
                android:src="@drawable/sym_keyboard_kb" />

        <!-- Undo button -->
        <ImageButton android:id="@+id/btnUndo"
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_below="@id/btnContinue"
                android:textColor="#ffffff"
                android:background="@drawable/button"
                android:src="@drawable/sym_keyboard_undo" />

    </RelativeLayout>

<ListView android:id="@+id/menuOptions"
          style="@style/optionsMenu" />

</FrameLayout>

ListView и IME выглядят так (внутри приложения SMS):

Но я хочу, чтобы это выглядело так:

Другими словами, я хочу, чтобы это появилосьснаружи представление ввода IME. Если Swype может это сделать, я знаю, что смогу (с небольшой помощью). Какие-либо предложения?

Заранее спасибо! Барри

Ответы на вопрос(1)

Ваш ответ на вопрос