使用ScrollView在一个屏幕中显示多个图像视图

时间:2018-05-16 03:01:36

标签: android scrollview

我希望在我的首页上有几个ImageView's,这是我的主要类,就像说六,排列成两列,我想这样做,因为我希望能够实现简单的点击听众参加活动。然而,由于ScrollView总是想要一个孩子,我无法添加滚动视图。我目前正在使用LinearLayout垂直方向。

以下是我希望通过其中ScrollView实现的示例

Here is the sample

我的代码到目前为止:)

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:card_view="http://schemas.android.com/tools"
    android:orientation="vertical"
    tools:context=".Activities.MainActivity"
    tools:showIn="@layout/app_bar_main"
    >


    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:layout_marginStart="4dp"
        android:layout_marginEnd="4dp"
        android:paddingTop="60dp">

        <android.support.v7.widget.CardView
            android:layout_width="182dp"
            android:layout_height="245dp"
            app:cardUseCompatPadding="true"
            card_view:cardCornerRadius="4dp"
            >

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/image1"
                android:scaleType="fitXY"
                app:srcCompat="@drawable/events_gradient"
                android:contentDescription="@string/todo" />

        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView
            android:layout_width="182dp"
            android:layout_height="245dp"
            app:cardUseCompatPadding="true"
            card_view:cardCornerRadius="4dp">

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/image2"
                android:scaleType="fitXY"
                app:srcCompat="@drawable/kaa_rada"
                android:contentDescription="@string/todo" />
        </android.support.v7.widget.CardView>
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginEnd="4dp"

        android:layout_marginStart="4dp">

        <android.support.v7.widget.CardView
            android:layout_width="182dp"
            android:layout_height="245dp"
            app:cardUseCompatPadding="true"
            card_view:cardCornerRadius="4dp">
            <ImageView
                android:id="@+id/image3"
                android:scaleType="fitXY"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                app:srcCompat="@drawable/doc"
                android:contentDescription="@string/todo" />

        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView
            android:layout_width="182dp"
            android:layout_height="245dp"
            app:cardUseCompatPadding="true"
            card_view:cardCornerRadius="4dp">

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/image4"
                android:scaleType="fitXY"
                app:srcCompat="@drawable/mythgradient"
                android:contentDescription="@string/todo" />
        </android.support.v7.widget.CardView>
    </LinearLayout>

</LinearLayout>

1 个答案:

答案 0 :(得分:0)

  

将内部布局包含在Scrollview中,例如

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:card_view="http://schemas.android.com/tools"
android:orientation="vertical"
tools:context=".Activities.MainActivity"
tools:showIn="@layout/app_bar_main"
>

<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="wrap_content"
    android:layout_height="wrap_content"

    android:layout_marginStart="4dp"
    android:layout_marginEnd="4dp"
    android:paddingTop="60dp">

    <android.support.v7.widget.CardView
        android:layout_width="182dp"
        android:layout_height="245dp"
        app:cardUseCompatPadding="true"
        card_view:cardCornerRadius="4dp"
        >

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/image1"
            android:scaleType="fitXY"
            app:srcCompat="@drawable/events_gradient"
            android:contentDescription="@string/todo" />

    </android.support.v7.widget.CardView>

    <android.support.v7.widget.CardView
        android:layout_width="182dp"
        android:layout_height="245dp"
        app:cardUseCompatPadding="true"
        card_view:cardCornerRadius="4dp">

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/image2"
            android:scaleType="fitXY"
            app:srcCompat="@drawable/kaa_rada"
            android:contentDescription="@string/todo" />
    </android.support.v7.widget.CardView>
</LinearLayout>

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginEnd="4dp"

    android:layout_marginStart="4dp">

    <android.support.v7.widget.CardView
        android:layout_width="182dp"
        android:layout_height="245dp"
        app:cardUseCompatPadding="true"
        card_view:cardCornerRadius="4dp">
        <ImageView
            android:id="@+id/image3"
            android:scaleType="fitXY"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:srcCompat="@drawable/doc"
            android:contentDescription="@string/todo" />

    </android.support.v7.widget.CardView>

    <android.support.v7.widget.CardView
        android:layout_width="182dp"
        android:layout_height="245dp"
        app:cardUseCompatPadding="true"
        card_view:cardCornerRadius="4dp">

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/image4"
            android:scaleType="fitXY"
            app:srcCompat="@drawable/mythgradient"
            android:contentDescription="@string/todo" />
    </android.support.v7.widget.CardView>
</LinearLayout>
</LinearLayout>
</ScrollView>
</LinearLayout>