3

在 Android 应用程序中,

当我按下 EditText 时,它看起来如下所示:

在此处输入图像描述

我在标签栏上方使用 textview 和以下代码

 android:windowSoftInputMode="stateHidden|adjustResize|adjustPan"

在清单文件中,当按下 EditText 时隐藏选项卡。但它也隐藏文本视图和按钮,如下所示:

在此处输入图像描述

我不想隐藏 textview ,我只想隐藏标签栏。

xml文件

聊天室.xml:

<?xml version="1.0" encoding="utf-8"?>

<TabHost
    android:id="@+id/tabHost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
     >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1" >

            <include layout="@layout/chat_tab_list" />
        </FrameLayout>

        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0"
            android:windowSoftInputMode="adjustPan"
            >
        </TabWidget>
    </LinearLayout>
</TabHost>

chat_tab_list.xml :

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
    android:id="@+id/chat_list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:visibility="visible" >

    <ListView
        android:id="@+id/listView"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="@color/white" >
    </ListView>

    <LinearLayout
        android:id="@+id/text_entry"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="bottom"
        android:orientation="horizontal"
        android:visibility="visible" >

        <EditText
            android:id="@+id/txt_inputText"
            android:layout_width="125dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.8"
            android:hint="@string/enter_text"
            android:inputType="text"                
            android:windowSoftInputMode="adjustResize" />

        <Button
            android:id="@+id/btn_Send"
            android:layout_width="100dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.2"
            android:text="@string/send" />
    </LinearLayout>
</LinearLayout>

请指导我。

任何帮助将不胜感激。

4

3 回答 3

2

这个问题表明您应该只能android:windowSoftInputMode="adjustPan"在选项卡栏上设置,但不能在文本输入上设置。这样,文本输入的行为正常,向上滚动,但标签栏保持不变。文本输入应该有android:windowSoftInputMode="adjustResize",以便它滚动。有关不同模式的详细信息,请参阅此页面

根据您的编辑,看起来这是因为您的编辑文本位于选项卡小部件内。您应该使用 adjustResize 的软输入模式将编辑文本移到根线性布局中。

于 2013-09-03T20:53:58.527 回答
1

尝试这个

将此添加到您的 AndroidManifest 中,仅在拥有您的标签的活动中。

<activity
    android:name="YourActivity"
    android:windowSoftInputMode="adjustPan" >
</activity>
于 2013-09-04T08:07:38.623 回答
0
 <Activity>
   android:windowSoftInputMode="adjustPan"
 </Activity>
于 2013-09-05T09:07:39.340 回答