软键盘推高布局或隐藏行动栏

时间:2014-12-02 11:41:47

标签: android android-layout android-softkeyboard

我的项目有软键盘问题。我已经用

设置了我的清单文件
android:windowSoftInputMode="adjustPan"

我的键盘和EditText可见。但就像下面链接的问题一样,屏幕底部的按钮与键盘一起向上推。

https://stackoverflow.com/questions/5516216/how-to-avoid-soft-keyboard-pushing-up-my-layout#=

我的布局包括一个RelativeLayout基础,其中包含2个LinearLayout(一个顶部,一个底部带有按钮),中间的ScrollView获取其余内容。当我尝试设置选项

android:isScrollContainer="false" 

在我的ScrollView上,这次我的操作栏向上推,并在布局中隐藏。

我想要一种键盘方式来克服底部线性布局滚动滚动视图的内容而不要推动操作栏。

有什么建议吗?

谢谢!

顺便说一句,我的滚动视图有很多微调器,EditTexts和一个AutoSuggest

工作“解决方案” - >为了帮助找到答案

如果我将RelativeLayout更改为具有垂直方向的LinearLayout并从清单中删除此属性android:windowSoftInputMode =“adjustPan”我有我想要的效果,操作栏不会消失,底部按钮不会向上推。问题是,我丢失了底部按钮以堆叠在底部。有时ScrollView比设备窗口小,所以这个解决方案只是帮助了我,但现在解决了我的实际问题。

信息:

<activity
   android:name=".app.HomeActivity"
   android:label="@string/title_activity_home"
   android:launchMode="singleTop"
   android:screenOrientation="portrait"
   android:windowSoftInputMode="adjustPan"/>

申请主题:

<style name="CustomActionBarTheme" parent="@style/AppTheme">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
</style>

<!-- ActionBar styles -->
<style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar">
    <item name="android:background">@drawable/shape_bar</item>
    <item name="android:titleTextStyle">@style/MyActionBarTitleText</item>
</style>

XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/fragment_detalhes_pedido2_linear_top"
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:paddingTop="@dimen/activity_vertical_margin"
            android:paddingBottom="@dimen/activity_vertical_margin"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin"
            android:background="@color/font_white_color"
            android:orientation="horizontal"
            android:gravity="center_vertical">

            <ImageView
                android:layout_width="@dimen/icon_size_default"
                android:layout_height="@dimen/icon_size_default"
                android:layout_gravity="center_vertical"
                android:contentDescription="@string/app_name"
                android:src="@drawable/icon_lista_clientes" />

            <br.newm.afvcore.layout.NewmTextView
                android:id="@+id/fragment_detalhes_pedido2_txt_cliente"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="@dimen/activity_horizontal_margin"
                android:text="Cliente Selecionado"
                android:textColor="@color/font_default_color"
                android:textSize="@dimen/font_size_default"
                android:textStyle="bold|italic" />
        </LinearLayout>

        <View
            android:layout_width="match_parent"
            android:layout_height="1dp"
            android:background="#696969" />

    </LinearLayout>

    <ScrollView
        android:id="@+id/fragment_scroll_datalhes2_miolo"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/fragment_detalhes_pedido2_linear_bottom"
        android:layout_below="@+id/fragment_detalhes_pedido2_linear_top"></ScrollView>

    <LinearLayout
        android:id="@+id/fragment_detalhes_pedido2_linear_bottom"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_marginBottom="@dimen/activity_vertical_margin"
        android:orientation="vertical">

        <View
            android:layout_width="match_parent"
            android:layout_height="0.1dp"
            android:background="@color/cinza_linha" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="@dimen/activity_vertical_margin"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin"
            android:orientation="horizontal"
            android:weightSum="1">

            <LinearLayout
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="0.35">

                <br.newm.afvcore.layout.NewmTextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textColor="@color/azul_letras"
                    android:textSize="@dimen/font_size_default"
                    android:text="Qtd:"
                    android:textStyle="bold" />

                <br.newm.afvcore.layout.NewmTextView
                    android:id="@+id/fragment_detalhes_pedido2_txt_qtd"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textColor="@color/font_default_color"
                    android:textSize="@dimen/font_size_default"
                    android:text="999999999"
                    android:layout_marginLeft="5dp"
                    android:textStyle="bold" />
            </LinearLayout>

            <LinearLayout
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="0.65"
                android:layout_marginLeft="5dp"
                android:gravity="right">

                <br.newm.afvcore.layout.NewmTextView
                    android:id="@+id/fragment_detalhes_pedido2_lbl_valor_total"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textColor="@color/azul_letras"
                    android:textSize="@dimen/font_size_default"
                    android:text="Total:"
                    android:textStyle="bold" />

                <br.newm.afvcore.layout.NewmTextView
                    android:id="@+id/fragment_detalhes_pedido2_txt_valor_total"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textColor="@color/font_default_color"
                    android:textSize="@dimen/font_size_default"
                    android:text="R$ 9.999.999,00"
                    android:layout_marginLeft="5dp"
                    android:textStyle="bold" />

            </LinearLayout>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/fragment_detalhes_pedido2_linear_btn"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="@dimen/activity_vertical_margin"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin"
            android:gravity="center_vertical">

            <Button
                android:id="@+id/fragment_detalhes_pedido2_btn_salvar"
                android:layout_width="0dip"
                android:layout_height="@dimen/btn_size_default"
                android:layout_weight="1"
                android:text="Salvar"
                android:background="@drawable/shape_btn_azul"
                android:textColor="@color/font_white_color"
                android:textSize="@dimen/font_size_default"
                android:textStyle="bold|italic" />

            <Button
                android:id="@+id/fragment_detalhes_pedido2_btn_reenviar_copia"
                android:layout_width="0dip"
                android:layout_height="@dimen/btn_size_default"
                android:layout_weight="1"
                android:text="Reenviar cópia do pedido"
                android:background="@drawable/shape_btn_azul"
                android:textColor="@color/font_white_color"
                android:textSize="@dimen/font_size_default"
                android:textStyle="bold|italic"
                android:visibility="gone" />

            <Button
                android:id="@+id/fragment_detalhes_pedido2_btn_finalizar"
                android:layout_width="0dip"
                android:layout_height="@dimen/btn_size_default"
                android:layout_marginLeft="@dimen/activity_horizontal_margin"
                android:layout_weight="1"
                android:text="Finalizar"
                android:background="@drawable/shape_btn_azul"
                android:textColor="@color/font_white_color"
                android:textSize="@dimen/font_size_default"
                android:textStyle="bold|italic" />

        </LinearLayout>

    </LinearLayout>

</RelativeLayout>

3 个答案:

答案 0 :(得分:4)

回答这个问题可能会迟到,但我遇到了这个问题并找到了一个解决方案,所以想要分享它。

给予财产

android:isScrollContainer="false"Layout

中的父母

android:windowSoftInputMode="adjustResize"

Activity

AndroidManifest.xml

答案 1 :(得分:-1)

在您的清单中尝试此操作:android:windowSoftInputMode="adjustResize|stateHidden"

答案 2 :(得分:-1)

android:windowSoftInputMode="adjustNothing"试试这个