现在,我有一个RecyclerView和多个CardView来显示我的项目。
我的CardView有一个RelativeLayout,我在其中添加了一些ImageViews(在这种情况下为3,但可以更多)。
我的每个项目都有一个要显示的图像列表,让我们假设#item1有Facebook,Twitter和Youtube,但#item2只有Facebook和Youtube图像。
我应该如何对齐图像?如果我只删除Twitter图像,我需要将我的Facebook图像的layout_toLeftOf更新为Youtube图像。
我想我不应该对我的所有物品做这种逻辑,它会超过权力......
示例图片: https://i.stack.imgur.com/uJZTi.png
fold_plant' (Stalk lef rig) = s (fold_plant' lef) (fold_plant' rig)
答案 0 :(得分:0)
在这种情况下最好使用LinearLayout并使用layout_alignParentRight和layout_alignParentTop =“true”而不是android:layout_gravity =“end | top”如下所示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true">
<ImageView android:background="@null"
android:id="@+id/facebook"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/facebook_icon"
android:layout_weight="1"/>
<ImageView android:background="@null"
android:id="@+id/twitter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/twitter_icon"
android:layout_weight="1"/>
<ImageView android:background="@null"
android:id="@+id/youtube"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/youtube_icon"
android:layout_weight="1"/>
</LinearLayout>
答案 1 :(得分:0)
你应该使用具有水平方向的LinearLayout!
<LinearLayout
...
android:orientation="horizontal">
//ImageViews in priority order
</LinearLayout>