我在XML设计的右上角设置了我的浮动按钮,但是当我将应用程序运行到设备时,浮动按钮没有得到正确的位置。 我会在我的设备中获得XML设计的相同位置。FloatingActionButton在CardView中的位置
我的XML设计:
设备显示:
<android.support.v7.widget.CardView
android:id="@+id/card_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:clickable="true"
android:layout_margin="4dp"
card_view:cardCornerRadius="7dp"
android:elevation="8dp"
app:cardPreventCornerOverlap="false"
>
<LinearLayout
android:orientation="vertical" android:layout_width="152dp"
android:layout_height="match_parent"
android:weightSum="1"
android:descendantFocusability="blocksDescendants">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:layout_width="match_parent"
android:layout_height="100dp"
android:scaleType="fitXY"
app:srcCompat="@drawable/draw_menu"
android:id="@+id/imageprodcard" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/likeButtoncard"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="0dp"
android:clickable="true"
android:src="@drawable/heart"
android:layout_gravity="right"
app:borderWidth="0dp"
app:fabSize="mini"
app:layout_anchor="@id/imageprodcard"
app:backgroundTint="#FFCCBC"
app:srcCompat="@drawable/ic_favorite_border_black_24dps"
/>
</FrameLayout>
<TextView
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="TextView"
android:layout_width="match_parent"
android:layout_height="25dp"
android:id="@+id/nomprodtestcard"
android:textAllCaps="false"
android:fontFamily="casual"
android:textAlignment="center"
android:paddingLeft="5dp" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="16dp">
<TextView
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="TextView"
android:layout_width="105dp"
android:layout_height="20dp"
android:id="@+id/prixprodtestcard"
android:textColor="@android:color/holo_red_light"
android:textAlignment="center"
android:paddingLeft="5dp"
android:elevation="5dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/rating"
android:layout_weight="777.07" />
<ImageView
android:layout_width="20dp"
android:layout_height="match_parent"
app:srcCompat="@android:drawable/btn_star"
android:id="@+id/imageView4"
android:scaleType="fitStart" />
</LinearLayout>
<TextView
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="TextView"
android:layout_width="match_parent"
android:layout_height="20dp"
android:id="@+id/qtestockcard"
android:textStyle="normal|italic"
android:textAlignment="center"
android:paddingLeft="5dp" />
</LinearLayout>
</android.support.v7.widget.CardView>
偏题 - 我不确定你的整个应用程序是什么样的,但从你提供的例子来看,你似乎在每个'CardView'上都放了一个'FAB',并根据[Google的Material Design](https:/ /material.io/guidelines/components/buttons-floating-action-button.html#buttons-floating-action-button-large-screens)这是不好的做法。 –