我有一个在 Android 布局上显示的横幅。在这个横幅上,我有两个头像,我想将它们并排显示,最重要的是,我想让它们显示在这两个头像在 y 轴上的中点与底部对齐的位置这些化身坐在上面的横幅。
你会怎么做?
编辑:
换句话说,我在问你如何使用像 android:layout_below 这样的参数,而不是将 imageview 的顶部与指定布局的底部对齐,而是对齐中心。
我有一个在 Android 布局上显示的横幅。在这个横幅上,我有两个头像,我想将它们并排显示,最重要的是,我想让它们显示在这两个头像在 y 轴上的中点与底部对齐的位置这些化身坐在上面的横幅。
你会怎么做?
编辑:
换句话说,我在问你如何使用像 android:layout_below 这样的参数,而不是将 imageview 的顶部与指定布局的底部对齐,而是对齐中心。
将它们放在线性布局中,然后给它们一个宽度以填充父级。然后你可以使用 weight 属性来平均分散宽度。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/clock" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/clock" />
</LinearLayout>
不幸的是,没有直接的布局参数可以将中心点与另一条边对齐。如果您的头像的高度是固定的,您可以添加一些高度为一半的填充,以便它们全部对齐;IE
<?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="wrap_content">
<ImageView
android:id="@+id/banner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="25dp"
android:src="@drawable/banner" />
<ImageView
android:id="@+id/avatar1"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:layout_alignBottom="@id/banner"
android:src="@drawable/horse" />
<ImageView
android:id="@+id/avatar2"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:layout_alignBottom="@id/banner"
android:layout_toRightOf="@id/avatar1"
android:src="@drawable/horse" />
</RelativeLayout>
但是,如果这些项目的高度是动态的,那么您将需要创建一个自定义ViewGroup
容器,以便您可以测量头像高度(in onMeasure()
)并在运行时应用填充(或其他偏移值)。