如果设备屏幕太小,添加滚动条

Add scroll bar if the device screen is too small

我的主要活动有这个布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:contentDescription="@string/my_app"
        android:src="@drawable/logo" />

    <GridView
        android:id="@+id/gridView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:horizontalSpacing="10dp"
        android:numColumns="auto_fit"
        android:paddingBottom="10dp"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:verticalSpacing="10dp" >

    </GridView>

    <TextView  
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="@string/about"
        android:textColor="#FFFFFF"
        android:background="#F7921A"
        android:gravity="center"
    />    
</LinearLayout>

我尝试添加带有 LinearLayout 作为其子项的 ScrollView,但是当我运行该应用程序时,滚动条仅应用于 gridview,仅显示 gridview 的一行... 如何将滚动条应用到整个屏幕?

据我了解,您希望 GridView 覆盖屏幕的某个部分(大概是中心),而 TextView 位于底部(固定),对吗?如果是这样,请使用相对布局作为您的根,并为 TextView 使用 android:layout_alignParentBottom="true",为 ImageView 使用 android:layout_alignParentTop="true"。然后,您可以使用 android:layout_below="@+id/imageView1" 和 android:layout_above="@+id/yourTextView".

对齐 GridView

更新:

<?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="wrap_content"
    android:orientation="vertical" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_gravity="center_horizontal"
        android:layout_marginBottom="10dp"
        android:layout_marginTop="10dp"
        android:src="@drawable/logo"
        android:contentDescription="@string/my_app" />

    <GridView
        android:id="@+id/gridView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_above="@+id/textView1"
        android:layout_below="@+id/imageView1"
        android:horizontalSpacing="10dp"
        android:numColumns="auto_fit"
        android:paddingBottom="10dp"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:verticalSpacing="10dp" >
    </GridView>

    <TextView
        android:id="@+id/textView1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:background="#F7921A"
        android:gravity="center"
        android:text="@string/about"
        android:textColor="#FFFFFF" />

</RelativeLayout>