xamarin卡视图布局

时间:2017-06-16 01:26:48

标签: c# xamarin xamarin.android

我正在尝试重新创建一个与此类似的cardview,其中带有标题的图像位于顶部,然后是一些数据,可能还有下面的一些操作按钮。但是对于我的生活,我无法将文字放在图像的顶部。  enter image description here

这是我到目前为止所拥有的

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:cardview="http://schemas.android.com/apk/res-auto"
android:id="@+id/card_view"
android:layout_width="match_parent"
android:layout_height="325dp"
android:layout_margin="8dp">
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ImageView
        android:id="@+id/image1"
        android:layout_width="match_parent"
        android:layout_height="230dp"
        android:layout_alignParentTop="true"
        android:scaleType="centerCrop" />
    <TextView
        android:id="@+id/recipeName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/image1"
        android:maxLines="3"
        android:padding="8dp"
        android:text="name"
        android:textColor="#222"
        android:textStyle="bold"
        android:textSize="22dp" />
    <TextView
        android:id="@+id/description"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/recipeName"
        android:maxLines="3"
        android:padding="8dp"
        android:text="description"
        android:textColor="#666"
        android:textSize="14dp" />
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_below="@+id/description">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/recipeName"
            android:maxLines="3"
            android:padding="8dp"
            android:text="View"
            android:textColor="#666"
            android:textSize="14dp" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/recipeName"
            android:maxLines="3"
            android:padding="8dp"
            android:text="Add"
            android:textColor="#666"
            android:textSize="14dp" />
    </LinearLayout>
</RelativeLayout>

1 个答案:

答案 0 :(得分:2)

我假设您希望@+id/recipeName位于@+id/image1之上。

recipeName上,您设置了android:layout_below="@+id/image1",它将布置 image1下面的元素。删除该行,因为您不希望它在该元素下面。试试android:layout_alignBottom="@+id/image1"。有足够的布局参数可以完成大部分工作:LayoutParams,虽然一旦开始进行复杂的布局,它可能会有点像兔子洞......

此外,您layout_below内的元素LinearLayout也没有做任何事情。