打开软键盘时ScrollView不会滚动

时间:2015-08-06 08:00:03

标签: android android-softkeyboard android-scrollview

我想在键盘上方打开软键盘并滚动edittext。但它必须在scrollView中。现在我有错误的结果: video

我不想要滚动顶视图。我只想滚动编辑文字。

我使用这个主题:

<style name="Theme.TransparencyDemo" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowTranslucentStatus">true</item>
        <item name="android:windowTranslucentNavigation">true</item>
    </style>

编辑:

video sample

布局:

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

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:app="http://schemas.android.com/apk/res-auto"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:orientation="vertical"
              android:weightSum="1"
                android:background="#142e06">


    <TextView
        android:layout_width="100dp"
        android:layout_height="30dp"
        android:text="New Text"
        android:id="@+id/textView"
        android:background="#ff4018"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"/>

    <EditText
        android:layout_width="300dp"
        android:layout_height="wrap_content"
        android:id="@+id/editText"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="150dp"/>

</RelativeLayout>

2 个答案:

答案 0 :(得分:1)

  

使用LinearLayout而不是Relative并将此行添加到清单

中的活动标记

 android:windowSoftInputMode="adjustPan"

答案 1 :(得分:0)

在您的布局android:fitsSystemWindows="true"中添加此内容

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <include layout="@layout/toolbar" />
     <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"      
        ndroid:fitsSystemWindows="true"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin">


        <!-- Your Content here -->


    </LinearLayout>
</RelativeLayout>

那将有效