我有几张图片,需要在特定的地方,但仍然是单独的图像。例如,假设我有一张脸的图像。单独的图像将是鼻子,眼睛,嘴唇等......
我需要在脸上的特定位置使用它们。问题是双重的:
1:我需要把它们放在特定的位置。相对布局似乎不太好用。除非我准确地输入边距。
2:另一个问题是当我换到另一台设备时,它会搞定位置。如果我手动输入边距,当我移动到平板电脑时,一切都被搞砸了。
实现这一目标的最佳方法是什么?
答案 0 :(得分:0)
您可以创建嵌套的线性布局,包含组件并在每个组件中使用double rand = Math.random() * 100;
if (rand < 10) {
System.out.print("*"); // <-- 10 percent of the time
} else if (rand < 40) { // <-- 10 + 30 = 40
System.out.print("B"); // <-- 30 percent of the time.
} else {
System.out.print("A"); // <-- 100 - 40 = 60
}
。如果您有高对齐约束,请为每个组件创建单独的布局,并相应地在其中使用android:layout_weight
。这样,切换设备时就不会出现任何定位问题。
答案 1 :(得分:0)
FYR
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
layoutParams.gravity = Gravity.LEFT|Gravity.TOP;
layoutParams.leftMargin = x;
layoutParams.topMargin = y;
imageView.setLayoutParams(layoutParams);