我如何居中和Android视图,同时允许远离其他视图,它会重叠?

时间:2010-11-05 11:47:23

标签: android layout

我有两个视图,都是特定的宽度。我希望它们按如下方式排列在水平线上:

  • 视图1应居中。
  • 视图2固定在显示屏的右边缘。

但是,如果这种安排会导致视图重叠(即屏幕太窄)

  • 视图2固定在显示屏的右边缘。
  • 视图1的右边缘应触及View 2的左边缘

有人能想到可以实现这个目标的布局吗?

我尝试过使用LinearLayout,但这导致了两件事之一:View 2被压缩(带有丑陋的文本包装),或者View 1无法居中。

RelativeLayout似乎更接近解决方案,但我必须在两个糟糕的解决方案之间做出选择 - 视图重叠或视图1无法居中。

1 个答案:

答案 0 :(得分:0)

这可能已经解决了..但是发布解决方案(可能没有优化),希望它能帮到某人。这两个视图都具有相同的大小(两者使用相同的图像)。根据需要,它们不会相互重叠,也会满足位置约束。

<ImageView
    android:id="@+id/ImageView_1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/image"
    android:layout_centerHorizontal="true"
    android:contentDescription="@string/view_1" />
<RelativeLayout 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_toRightOf="@id/ImageView_1">
    <ImageView
        android:id="@+id/ImageView_2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/image"
        android:layout_alignParentRight="true"
        android:contentDescription="@string/view_2" />
</RelativeLayout>