Selin Kaplan
Selin Kaplan

Reputation: 28

How can i use my cardview and slider with scroll page?

i'm writing code for my news application. Now i am making my home page. I have card view and slider in my activity_main.xml but i want to make this page is scrolling. When i add more, it should be scoll. I tried to use Scroll view but it is not working.

<?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>

What should i use for scroll and how can i add to my code?

Upvotes: 0

Views: 64

Answers (2)

Amir jodat
Amir jodat

Reputation: 589

this part of your code is replicated many times, its good practice to use RecyclerView instead of it, using RecyclerView you can have many items as you want and it has an automatic scroll. please refer to the link below for more information 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>

Upvotes: 2

VikaS GuttE
VikaS GuttE

Reputation: 1704

Added below code above your code in 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**************

Upvotes: 0

Related Questions