キーボードを表示すると押すべきボタンが隠れるからスクロールさせたいね!っていうときの応急処置 – Android

[PR]

フォームに入力するときはキーボードがビャーって出てきて、キーボードの引っ込めかたがわからないと、下のボタンが押せない!進めない!ってなることがありますよね。

自分の場合は戻るボタンで隠してたんですけど、それってユーザーさんみんなが気付くとも限らず、ともすればホームボタンを押してウワーってなることもあります。

なのでやっぱりスクロールしたいよね!

ということで、素直にScrollViewを使いましょう。

とは言っても、ScrollViewは1つの子しか受け入れられません。

とか言っても、1つしか入れないなんて状況は、ほぼほぼないよ!

じゃあもうその選ばれし子はLinearLayoutにしてしまって、ScrollViewさんにバレないLinearLayoutさんの中にたくさんの子を抱え込みましょうという答えになります。

<ScrollView
    android:id="@+id/scroll_view"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

    <LinearLayout
        android:id="@+id/linear_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        //スクロールするテキストビューやボタンを抱えたいだけ抱える

    </LinearLayout>
</ScrollView>

これでちゃんと動きます。スクロールもします。

でも、あんまり気持よくないコードですよね。
他に何かいい方法があったら教えてください。