我有带卡片视图的recyclerView。
在cardView布局中,我想在心脏图像旁边放置文字并共享图像。我希望如果文本很长,那么不要在心脏图像后面,但它应该转到新行。现在它不能按我的意愿工作。在其他卡片视图中,我的心脏图像有时比其他心脏图像更大。
这是一个例子(上面的心脏和分享比下面的大,我希望所有的心脏并分享相同大小的图像):
我的卡片视图布局代码:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#FCFCFC"
tools:context="showresultactivity.SlideTabsActivity">
<android.support.v7.widget.CardView
android:id="@+id/cardView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:cardCornerRadius="3dp"
app:cardElevation="1dp"
android:layout_margin="5dp"
app:cardPreventCornerOverlap="false">
<RelativeLayout
android:id="@+id/relativeLayout"
android:padding="8dp"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/imagesSrcUrl"
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@drawable/ic_launcher"
android:scaleType="centerCrop" />
<TextView
android:id="@+id/someText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/someText"
android:layout_below="@id/street"
android:text="some"
android:textSize="20dp"
android:textStyle="bold" />
<TextView
android:id="@+id/someText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/imagesSrcUrl"
android:layout_below="@id/someText2"
android:textSize="12dp"
android:text="some text "
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
/>
<TextView
android:id="@+id/street"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12dp"
android:layout_alignParentTop="true"
android:layout_alignRight="@id/cardViewLike"
android:layout_toRightOf="@+id/imagesSrcUrl"
android:text="asdasd sd sd ad ssssssowiskifd sdf"
android:layout_marginTop="5dp"
android:layout_marginLeft="10dp"
android:drawableLeft="@drawable/custom_size_icon_next_to_text"
android:textAlignment="gravity"
/>
<ImageView
android:id="@+id/cardViewLikeRed"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_alignBottom="@+id/street"
android:layout_alignParentEnd="true"
android:layout_alignParentTop="true"
android:layout_marginEnd="35dp"
android:src="@drawable/ic_heart_red"
/>
<ImageView
android:id="@+id/cardViewLike"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_alignBottom="@+id/street"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_marginEnd="35dp"
android:src="@drawable/ic_heart_white"
/>
<ImageView
android:id="@+id/cardViewShare"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignBottom="@+id/street"
android:background="@null"
android:tintMode="src_over"
android:src="@drawable/ic_share" />
</RelativeLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
有时它会发生:
文字在我的图片下,但它应该是一个新行。
答案 0 :(得分:0)
您需要更改街道 TextView
的相关规则尝试添加以下内容:
android:layout_toEndOf="@+id/imagesSrcUrl"
android:layout_toLeftOf="@+id/cardViewLikeRed"
android:layout_toRightOf="@+id/imagesSrcUrl"
android:layout_toStartOf="@+id/cardViewLikeRed"
所以你的TextView应该是这样的:
<TextView
android:id="@+id/street"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:layout_toEndOf="@+id/imagesSrcUrl"
android:layout_toLeftOf="@+id/cardViewLikeRed"
android:layout_toRightOf="@+id/imagesSrcUrl"
android:layout_toStartOf="@+id/cardViewLikeRed"
android:drawableLeft="@drawable/custom_size_icon_next_to_text"
android:text="asdasd sd sd ad ssdsdhjshjshkkljkljkljkljlkjkljlkjkljlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjljlkjlkjlkjkljlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjlkjljlkjlkjdjkshjdhsdjkhjkdshfjksdhfssssowiskifd sdf"
android:textAlignment="gravity"
android:textSize="12dp" />