如何在滚动页面上使用Cardview和滑块?

时间:2019-02-23 08:41:47

标签: java android android-cardview

我正在为新闻应用程序编写代码。现在,我正在制作主页。我的activity_main.xml中有名片视图和滑块,但我想使此页面滚动。当我添加更多时,它应该是scoll。我尝试使用滚动视图,但无法正常工作。

<?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"
        android:orientation="vertical"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        tools:context=".Anasayfa">

        <android.support.v4.view.ViewPager
            android:layout_width="match_parent"
            android:layout_height="300dp"
            android:id="@+id/viewPager">

        </android.support.v4.view.ViewPager>

        <GridLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="8"
        android:rowCount="2"
        android:columnCount="2"
        android:alignmentMode="alignMargins"
        android:columnOrderPreserved="false"
        android:padding="10dp">

    <android.support.v7.widget.CardView
        android:layout_width="0dp"
        android:id="@+id/haber1"
        android:layout_height="0dp"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        app:cardElevation="8dp"
        android:layout_marginRight="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginBottom="10dp"
        app:cardCornerRadius="8dp">

        <LinearLayout
            android:layout_gravity="center_horizontal|center_vertical"
            android:layout_width="wrap_content"
            android:orientation="vertical"
            android:layout_margin="16dp"
            android:layout_height="wrap_content">

            <ImageView
                android:clickable="true"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"/>
            <TextView
                android:clickable="true"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAlignment="center"
                android:text="haber1"
                android:textColor="@android:color/black"
                android:textStyle="bold"
                android:textSize="15sp"/>

        </LinearLayout>

    </android.support.v7.widget.CardView>
    <android.support.v7.widget.CardView
        android:id="@+id/haber2"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginRight="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginBottom="10dp"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        app:cardElevation="8dp"
        app:cardCornerRadius="8dp">

        <LinearLayout
            android:orientation="vertical"
            android:layout_gravity="center_horizontal|center_vertical"
            android:layout_width="wrap_content"
            android:layout_margin="16dp"
            android:layout_height="wrap_content">

            <ImageView
                android:clickable="true"
                android:layout_gravity="center_horizontal"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
            <TextView
                android:clickable="true"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAlignment="center"
                android:text="haber2"
                android:textColor="@android:color/black"
                android:textStyle="bold"
                android:textSize="15sp"/>

        </LinearLayout>

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

    <android.support.v7.widget.CardView
        android:id="@+id/haber3"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        app:cardElevation="8dp"
        android:layout_marginRight="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginBottom="10dp"
        app:cardCornerRadius="8dp">

        <LinearLayout
            android:orientation="vertical"
            android:layout_gravity="center_horizontal|center_vertical"
            android:layout_width="wrap_content"
            android:layout_margin="16dp"
            android:layout_height="wrap_content">

            <ImageView
                android:clickable="true"
                android:layout_gravity="center_horizontal"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
            <TextView
                android:clickable="true"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAlignment="center"
                android:text="haber3"
                android:textColor="@android:color/black"
                android:textStyle="bold"
                android:textSize="15sp"/>

        </LinearLayout>

    </android.support.v7.widget.CardView>
    <android.support.v7.widget.CardView
        android:layout_width="0dp"
        android:id="@+id/haber4"
        android:layout_height="0dp"
        android:layout_marginRight="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginBottom="10dp"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        app:cardElevation="8dp"
        app:cardCornerRadius="8dp">

        <LinearLayout
            android:orientation="vertical"
            android:layout_gravity="center_horizontal|center_vertical"
            android:layout_width="wrap_content"
            android:layout_margin="16dp"
            android:layout_height="wrap_content">
            <ImageView
                android:clickable="true"
                android:layout_gravity="center_horizontal"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />


            <TextView
                android:clickable="true"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAlignment="center"
                android:text="haber4"
                android:textColor="@android:color/black"
                android:textStyle="bold"
                android:textSize="15sp"/>
        </LinearLayout>
      </android.support.v7.widget.CardView>

      </GridLayout>
    </LinearLayout>

滚动时应该使用什么,如何添加到代码中?

2 个答案:

答案 0 :(得分:2)

这部分代码被复制了很多次,它的好习惯是使用RecyclerView代替它,使用RecyclerView您可以根据需要拥有许多项目,并且具有自动滚动功能。 请参考下面的链接以获取更多信息RecyclerView

 <android.support.v7.widget.CardView
    android:layout_width="0dp"
    android:id="@+id/haber4"
    android:layout_height="0dp"
    android:layout_marginRight="10dp"
    android:layout_marginLeft="10dp"
    android:layout_marginBottom="10dp"
    android:layout_columnWeight="1"
    android:layout_rowWeight="1"
    app:cardElevation="8dp"
    app:cardCornerRadius="8dp">

    <LinearLayout
        android:orientation="vertical"
        android:layout_gravity="center_horizontal|center_vertical"
        android:layout_width="wrap_content"
        android:layout_margin="16dp"
        android:layout_height="wrap_content">
        <ImageView
            android:clickable="true"
            android:layout_gravity="center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />


        <TextView
            android:clickable="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAlignment="center"
            android:text="haber4"
            android:textColor="@android:color/black"
            android:textStyle="bold"
            android:textSize="15sp"/>
    </LinearLayout>
  </android.support.v7.widget.CardView>

答案 1 :(得分:0)

Layout.xml中的代码上方添加了以下代码

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent" 
 android:fillViewport="true">

 <RelativeLayout
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:background="#ffffff" >

\\**************Your Code**************