在scrollView中平滑滚动

时间:2018-10-05 07:04:45

标签: android smooth-scrolling

我是android的新手,我创建了一个简单的代码块,其中包含一个scrollView和一个图像。我希望此滚动视图能够平滑滚动。我该怎么办?我已经在Internet上浏览了许多资料,但是所有这些资料都使用了难以理解的硬术语。有人可以帮帮我吗 ?谢谢。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        xmlns:android="http://schemas.android.com/apk/res/android"
    >
    <ScrollView
            android:id="@+id/scroll_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@color/colorPrimaryDark">
        <RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <TextView
                android:id="@+id/text_view"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:text="@string/top_string"
                android:textColor="@android:color/white"
                android:textSize="16dp"
                android:textScaleX="1.5" 
            />
             <ImageView
                 android:id="@+id/img"
                 android:layout_width="300dp"
                 android:layout_height="150dp"
                 android:src="@drawable/dg_truck_main"
                 android:layout_gravity="center_horizontal"
                 android:background="@android:color/holo_blue_light"
                 android:layout_marginTop="10dp"
                 android:layout_centerHorizontal="true"
                 android:layout_below="@id/text_view"
              />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/top_string2"
            android:textColor="@android:color/white"
            android:textSize="16dp"
            android:textScaleX="1.5"
            android:layout_marginTop="50dp"
            android:layout_below="@id/img"
            />
            </RelativeLayout>
    </ScrollView>

</RelativeLayout>

3 个答案:

答案 0 :(得分:0)

您已在ScrollView内添加了RelativeLayout,我建议您应将RelativeLayout放在ScrollView标记内。请检查以下代码,

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
        android:id="@+id/scroll_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/colorPrimaryDark">
<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
        <TextView
            android:id="@+id/text_view"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            android:text="@string/top_string"
            android:textColor="@android:color/white"
            android:textSize="16dp"
            android:textScaleX="1.5" 
        />
         <ImageView
             android:id="@+id/img"
             android:layout_width="300dp"
             android:layout_height="150dp"
             android:src="@drawable/dg_truck_main"
             android:layout_gravity="center_horizontal"
             android:background="@android:color/holo_blue_light"
             android:layout_marginTop="10dp"
             android:layout_centerHorizontal="true"
             android:layout_below="@id/text_view"
          />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/top_string2"
        android:textColor="@android:color/white"
        android:textSize="16dp"
        android:textScaleX="1.5"
        android:layout_marginTop="50dp"
        android:layout_below="@id/img"
        />
        </RelativeLayout>

</RelativeLayout>
</ScrollView>

答案 1 :(得分:0)

好的,我知道了。由于我是Android新手,所以我认为“平滑滚动”是另外一回事,我们必须将其集成到我们的项目中。但是scrollView已经可以平滑滚动,因此我们不需要为此编写任何其他代码。

答案 2 :(得分:0)

//使滚动视图更快 //在xml中添加下面一行

  android:fillViewport="true"

//还将以下行添加到您的java类中 // 使滚动视图更快

    scrollView.fullScroll(View.FOCUS_DOWN);
    scrollView.setSmoothScrollingEnabled(true);