首页 > 解决方案 > 在android中的CardView上放置fab图标

问题描述

我有一个要求,我想将浮动按钮设置为添加图像按钮,我希望我的工厂图标位于卡片视图的左下方(这是个人资料图片的父级),但工厂图标始终是在cardview下方滑动:

在此处输入图像描述

我的布局 xml:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="20dp"
    android:layout_marginRight="20dp"
    android:orientation="vertical"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="10dp"
    android:layout_marginBottom="10dp">

    <LinearLayout
        android:layout_width="130dp"
        android:layout_height="130dp"
        android:layout_centerHorizontal="true"
        android:orientation="vertical"
        android:layout_alignParentTop="true"
        android:elevation="12dp">

    <android.support.v7.widget.CardView
        android:id="@+id/cv_amf_memberProfilePic"
        android:layout_width="124dp"
        android:layout_height="124dp"
        app:cardCornerRadius="60dp">

        <ImageView
            android:id="@+id/iv_amf_memberAvatar"
            android:contentDescription="Member Profile Picture"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="centerCrop"
            android:src="@drawable/ic_member" />

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

        <android.support.design.widget.FloatingActionButton
            android:id="@+id/fab_addImage"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:layout_marginBottom="50dp"
            android:layout_gravity="bottom|end"
            android:padding="5dp"
            app:backgroundTint="@android:color/white"
            app:srcCompat="@mipmap/ic_add_new_member" />

    </LinearLayout>
</RelativeLayout>

标签: android

解决方案


将 LinearLayout 替换为 RelativeLayout 并设置 right 和 below 属性

 <RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_alignParentTop="true"
            android:elevation="12dp">

            <android.support.v7.widget.CardView
                android:id="@+id/cv_amf_memberProfilePic"
                android:layout_width="124dp"
                android:layout_height="124dp"
                app:cardCornerRadius="60dp">

                <ImageView
                    android:id="@+id/iv_amf_memberAvatar"
                    android:contentDescription="Member Profile Picture"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:scaleType="centerCrop"
                    android:src="@drawable/ic_sun" />

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

            <android.support.design.widget.FloatingActionButton
                android:id="@+id/fab_addImage"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:padding="5dp"
                app:backgroundTint="@android:color/white"
                app:srcCompat="@mipmap/ic_add_new_member" 
                android:layout_below="@id/cv_amf_memberProfilePic"
                android:layout_alignRight="@id/cv_amf_memberProfilePic"
                />

        </RelativeLayout>

推荐阅读