在屏幕区域内填充CardView

时间:2016-12-18 19:48:10

标签: android android-layout android-fragments android-cardview

在我的Android应用程序中,我是一个片段,我想要显示给CardViews。这两个CardView都应该填满整个屏幕区域。在cardview元素内显示的图像是非常大的图像,同样应缩小以显示在cardview内部。我无法使用以下代码填充整个屏幕区域并使cardview可以点击。

<FrameLayout 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"
    tools:context="com.myFirstApp.app1.cardviewFragment">

    <!-- TODO: Update blank fragment layout -->

    <!--<android.support.v7.widget.RecyclerView
        android:id="@+id/recyclerview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scrollbars="horizontal"
    android:background="@android:color/holo_blue_bright" ></android.support.v7.widget.RecyclerView>-->
    <LinearLayout android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_margin="10dp" android:background="@color/colorAccent">
        <android.support.v7.widget.CardView
            xmlns:card_view="http://schemas.android.com/apk/res-auto"
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/card_view1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            card_view:cardUseCompatPadding="true"
            card_view:cardCornerRadius="8dp"
            android:layout_marginBottom="16dp">

            <LinearLayout android:orientation="vertical"
                android:id="@+id/display_card_view_linearLayout1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <TextView
                    android:id="@+id/display_name1"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:textSize="13sp"
                    android:text="@string/app_name"
                    android:textColor="#ffffff"
                    android:paddingBottom="8dp"
                    android:paddingTop="8dp"
                    android:gravity="center_horizontal"
                    android:layout_alignParentBottom="true"
                    android:background="#1976D2"/>
                <ImageView
                    android:id="@+id/display_image1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:contentDescription="@string/action_settings"
                    android:scaleType="fitCenter" />
                <TextView
                    android:id="@+id/display_information1"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:textSize="13sp"
                    android:text="Card View Footer"
                    android:textColor="#ffffff"
                    android:layout_below="@+id/display_image1"
                    android:paddingBottom="8dp"
                    android:paddingTop="8dp"
                    android:gravity="center_horizontal"
                    android:layout_alignParentBottom="true"
                    android:background="#1976D2"/>

            </LinearLayout>

        </android.support.v7.widget.CardView>
        <android.support.v7.widget.CardView
            xmlns:card_view="http://schemas.android.com/apk/res-auto"
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/card_view"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            card_view:cardUseCompatPadding="true"
            card_view:cardCornerRadius="8dp"
            android:layout_marginBottom="16dp">

            <LinearLayout android:orientation="vertical"
                android:id="@+id/display_card_view_linearLayout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <TextView
                    android:id="@+id/display_name2"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:textSize="13sp"
                    android:text="@string/app_name"
                    android:textColor="#ffffff"
                    android:paddingBottom="8dp"
                    android:paddingTop="8dp"
                    android:gravity="center_horizontal"
                    android:layout_alignParentBottom="true"
                    android:background="#1976D2"/>
                <ImageView
                    android:id="@+id/display_image2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:contentDescription="@string/action_settings"
                    android:scaleType="fitCenter" />
                <TextView
                    android:id="@+id/display_information2"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:textSize="13sp"
                    android:text="Card View Footer"
                    android:textColor="#ffffff"
                    android:layout_below="@+id/display_image2"
                    android:paddingBottom="8dp"
                    android:paddingTop="8dp"
                    android:gravity="center_horizontal"
                    android:layout_alignParentBottom="true"
                    android:background="#1976D2"/>

            </LinearLayout>

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

</FrameLayout>

如何让CardView填充整个区域并使其可点击?

提前致谢,

IamHuM

1 个答案:

答案 0 :(得分:0)

尝试把它放在cardview中:

android:layout_margin="0dp"

我不知道这对你有用,但在我的一个应用程序中,你可以在设置活动布局中查看代码GitHub code,我使用全宽度的卡片视图。