6

私のメインのアクティビティには、タブレットの大きな画面では互いに下に収まるボタンが多数ありますが、電話の小さな画面では収まりません。画面サイズが必要な場合にユーザーが他のボタンまでスクロールできるように、ScrollView を追加しました。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:orientation="vertical"
          android:background="@drawable/bg"
          android:gravity="center_horizontal">

    <TextView
        android:id="@+id/trackSelectorText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"/>

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center">

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

        <Button                    
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="foo" />
        <!-- More buttons -->
        </LinearLayout>
    </ScrollView>
</LinearLayout>

これはちょっとうまくいきますが、最後のボタンの下に大きな空白スペースがあります (つまり、ScrollView が下にスクロールしすぎる可能性があります)。実際のタブレットと電話構成のエミュレーターの両方で。center(の代わりに) 内側の LinearLayout の場合center_horizontal、スペースは上部と下部の間に均等に広がりますが、どちらも望ましくありません。このレイアウトを修正するにはどうすればよいですか?

ScrollView が完全に下にスクロールされ、最後のボタンが表示されていると想像してください。私が意味する空白は、右の画像のボタン 6の下にあるものです。

ここに画像の説明を入力

4

4 に答える 4

10

この属性を ScrollView 要素に追加してみてください。アンドロイド:fillViewport="true"

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:fillViewport="true" > ... </ScrollVIew>

参照: ScrollView 参照

于 2013-09-06T13:36:19.107 に答える
1

この属性をスクロールビューで使用して、ビューの下部に余分なパディングを避けることができます

android:overScrollMode="never"
于 2016-10-15T05:55:45.543 に答える
0

私は自分のコードでチェックしました..完璧に動作します:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:orientation="vertical"
      android:background="@drawable/bg"
      android:gravity="center_horizontal">

<TextView
    android:id="@+id/trackSelectorText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center_horizontal"/>

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center">

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

    <Button                    
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="foo" />
    <!-- More buttons -->
    </LinearLayout>
  </ScrollView>
</LinearLayout>

かもしれません 助けてください.......!!

于 2013-09-06T13:30:43.733 に答える