这个.xml将是RecycleView列表中项目的布局,但最后两个按钮是重叠的
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#Ffffff"
android:baselineAligned="false"
android:weightSum="1">
<LinearLayout android:id="@+id/thumbnail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="3dip"
android:layout_alignParentLeft="true"
android:background="@drawable/favorite"
android:layout_marginRight="5dip">
<ImageButton
android:id="@+id/imageButton"
android:layout_width="25dip"
android:layout_height="25dip"
android:background="@null"
android:src="@drawable/nofavorite"/>
</LinearLayout>
<TextView
android:id="@+id/text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/thumbnail"
android:layout_toRightOf="@+id/thumbnail"
android:text="Rihanna Love the way lie"
android:textColor="#040404"
android:typeface="sans"
android:textSize="15dip"
android:textStyle="bold"/>
<TextView
android:id="@+id/artist"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="#343434"
android:textSize="10dip"
android:layout_toRightOf="@+id/thumbnail"
android:text="Just gona stand there and ..."
android:layout_below="@+id/text_view" />
<ImageButton android:layout_width="wrap_content"
android:id="@+id/update"
android:layout_height="wrap_content"
android:src="@drawable/nofavorite"
android:background="@null"
android:layout_alignRight="@+id/artist" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@null"
android:id="@+id/delete"
android:src="@drawable/favorite"
android:layout_alignRight="@+id/artist"
/>
</RelativeLayout>
它们应该在右边的末尾,最后是DELETE按钮,在这个按钮的左边,但是在屏幕的右端有UPDATE按钮,我将稍后将这些按钮绑定到
和另一个问题,我如何通过物品制作分隔物?
谢谢=)
答案 0 :(得分:2)
这是因为您在两个图像上使用layout_alignRight="@+id/artist"
,这些图像基本上将2个图像的右边缘与具有id艺术家的视图的右边缘对齐。要实现您的目标,请在DELETE按钮上使用layout_alignParentRight="true"
,在UPDATE按钮上使用layout_toLeftOf="@+id/delete"
。顺便说一句,为什么你需要在父级上使用layout_weightSum。它只适用于LinearLayout。
要在项目之间进行分隔,您可以在其中一个项目上使用左(右)边框的背景,或者在它们之间放置视图。
答案 1 :(得分:1)
您的按钮需要具有相对于彼此设置其位置的属性。目前,关于其立场的唯一迹象是:
android:layout_alignRight="@+id/artist"
由于您使用的是RelativeLayout(这很好),这还不足以放置您的组件。我建议您使用IDE中的可视化编辑器来处理参数。
要记住的一件事是,XML文件中最后描述的组件应该具有与其他组件相对的位置属性。所以在你的情况下,你的DELETE按钮。