如何在不使用 LinearLayout 的情况下将两个图像彼此相邻设置?

How to set two images next to each other without using a LinearLayout?

假设我有两个 ImageView。如果没有 LinearLayout,以编程方式将它们彼此相邻设置的最简单 way/best 方法是什么? (我正在使用 RelativeLayout

目前我有两个ImageView,一个叫A,另一个叫B.

先画

A,再画B.

我所做的是:

B.setTranslationX(A.getRight());

这是应该做的是将 B 左侧的 X 坐标设置为 A 右侧的 X 坐标,这将使它们彼此相邻。

但是当我这样做时,A 的左边、A 的右边、B 的左边和 B' 都得到 0没错。

所以实际上,AB在彼此之上,这不是我想要的。

试试这个:

RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
ImageView iv1 = new ImageView(context);
ImageView iv2 = new ImageView(context);

your_relative_layout.addView(iv1, layoutParams);
layoutParams.addRule(RelativeLayout.RIGHT_OF, iv1.getId());
your_relative_layout.addView(iv2, layoutParams);

此代码向 LayoutParams 添加了一条规则,即 iv2 位于 iv1

的右侧