滚动视图无法正常工作

时间:2016-10-08 08:48:44

标签: android android-layout android-scrollview

我正在尝试制作滚动视图。我的应用程序中有一个文本字段,当我打开键盘时,整个屏幕都会向上移动,我想让它滚动,这样我就可以看到那里发生了什么。

我的滚动视图有一个文本字段和一些图像视图显示在屏幕上。

 <ScrollView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:scrollbars="vertical"
    android:fillViewport="true"
    android:id="@+id/scrollView2" >

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:minHeight="570dp">

        <LinearLayout
                android:orientation="horizontal"
                android:layout_width="fill_parent"
                android:layout_height="60dp"
                android:layout_marginTop="30dp">

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:text="Total Lives :"
                    android:id="@+id/textView12"
                    android:layout_marginTop="8dp"
                    android:layout_marginLeft="20dp" />

                <ImageView
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:id="@+id/lifeImage1"
                    android:src="@drawable/full_brain_game" />

                <ImageView
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:id="@+id/lifeImage2"
                    android:src="@drawable/full_brain_game" />

                <ImageView
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:id="@+id/lifeImage3"
                    android:src="@drawable/full_brain_game" />

                <ImageView
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:id="@+id/lifeImage4"
                    android:src="@drawable/full_brain_game" />

                <ImageView
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:id="@+id/lifeImage5"
                    android:src="@drawable/full_brain_game" />

                <ImageView
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:id="@+id/lifeImage6"
                    android:src="@drawable/full_brain_game" />
            </LinearLayout>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:id="@+id/textView7"
            android:layout_marginLeft="150dp"
            android:textColor="@color/red"
            android:layout_marginTop="150dp" />

        <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView"
            android:src="@drawable/full_brain_game_1" />

    </LinearLayout>
</ScrollView>

3 个答案:

答案 0 :(得分:0)

首先,您需要将ScrollView's身高和宽度设置为match_parent,然后linearLayout身高必须也是match_parent。那一切都会好的。

答案 1 :(得分:0)

将ScrollView子项更改为RelativeLayout,如下所示,并在RelativeLayout中添加线性布局:

<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

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

              <ImageView
                android:layout_width="match_parent"
                android:layout_height="wrap_content" />

              <ImageView
                android:layout_width="match_parent"
                android:layout_height="wrap_content" />

        </LinearLayout>

   </RelativeLayout>

答案 2 :(得分:0)

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

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


          <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center">
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:textStyle="bold"
                android:id="@+id/txtsignup"
                android:text="Register Here"
                android:textSize="30dp"
                android:padding="10dp"/>
        </LinearLayout>
    </LinearLayout>

 </ScrollView>

</LinearLayout>

尝试此操作,并继续在线性布局中添加视图。