28

私はEditTextからいくつかのビューを持つレイアウトを持っています。レイアウトは簡単に1ページに収まりますが、ソフトキーボードが消えているときはレイアウトはスクロールしません。 は、ここに私のレイアウトの要約です:Android:ScrollViewがキーボードでスクロールしない

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@drawable/background" > 

    <ScrollView 
     android:id="@+id/ScrollView1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" > 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" > 

      <CheckBox/> 

      <TextView/> 

      <LinearLayout> 
       <EditText> 
        <requestFocus /> 
       </EditText> 
      </LinearLayout> 

      <TextView/> 

      <LinearLayout> 
       <Spinner/> 
      </LinearLayout> 

     </LinearLayout> 

    </ScrollView> 

    <Button 
     android:layout_alignParentBottom="true" /> 

</RelativeLayout> 

そして、私のマニフェストに私は属性を宣言している:それは動作しませんし、それが動作しないことを確認する方法をなぜ

android:windowSoftInputMode="adjustResize|stateHidden" 

誰でも知っていますか?

ありがとうございます!

+1

Android 5の場合、この関連記事をチェックアウトしてください:[Android - キーボードがAndroid版5.0(ロリポップ)のときにスクロールビューを調整](http://stackoverflow.com/questions/27167176/android-adjust-scrollview-when-キーボードのアップです - アンドロイド-5-0-ロールポップ) –

答えて

28

明らかに、ScrollViewのandroid:layout_heightは、wrap_contentに設定しないでください。私はmatch_parentに設定し、android:layout_aboveをページの下部にあるボタンに設定します。

理由を聞かないでください。これで問題が解決しました。

+0

'layout_above'何? –

+5

'layout_above'画面のボトムに固定したいビューを指定します – Xander

+1

あなたは人生の節約者です:) – letronje

35

私は同じ問題を抱えていたと私はマニフェストに私の活動をチェックし、私は、このプロパティを使用していなかったので、それが働いていなかった理由は次のとおりです。

android:windowSoftInputMode="adjustResize" 

今では素晴らしい作品と無追加のアンカーを行う必要があります。

9

android:windowSoftInputMode="stateHidden|adjustResize"をAndroidManifest.xmlファイルのタグに追加します。これにより、ソフトキーボードが表示された後に画面がスペースの左にリサイズされます。したがって、簡単にスクロールすることができます。

+1

偉大な、それは私のために完全に働いた(y) – Rifinio

0

私の問題はHorizo​​ntalScrollViewの問題でした。アクティビティがに設定されているのAndroidManifest.xmlで

android:layout_above="@+id/closeButton" 
android:layout_below="@+id/logo" 

を::

android:windowSoftInputMode="" 

私は、これは誰にも役立ちます願ってい

android:layout_width="match_parent" 
android:layout_height="match_parent" 

そして、削除します。私の場合は、にHorizo​​ntalScrollViewを設定する必要がありましたこの奇妙なバグを見渡す。

0

ScrollViewを親レイアウトとして設定してください。それは私の魅力のように機能します!

5

私の場合、上記のものは何も働かなかった。

私のテーマはitem name="android:windowTranslucentStatus">true</item>でした。親のレイアウトにandroid:fitsSystemWindows="true"を設定して、スクロールビューがどこにあるのかを修正しました。

関連する問題