我有一个固定的背景图像,并在其上显示另一个图像。 这是xml -
<AbsoluteLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<ImageView
android:id="@+id/test_image"
android:src="@drawable/lpch_1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<ImageView
android:id="@+id/search_pin"
android:src="@drawable/pin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_y="100px"
android:layout_x="100px"
/>
</AbsoluteLayout>
现在,如何从代码中更改image-id search_pin的layout_x,layout_y?
答案 0 :(得分:5)
试试这个:
AbsoluteLayout.LayoutParams params = ((AbsoluteLayout.LayoutParams) test_image.getLayoutParams());
params.x = 100;
params.y = 100;
test_image.setLayoutParams(params);
答案 1 :(得分:3)
不推荐使用绝对布局。
对于这种情况,我建议使用 FrameLayout 。
除了 px 之外, dp 或 dip 更受欢迎。
由于android支持多种屏幕分辨率,因此不得不提及特定小部件的固定坐标。
答案 2 :(得分:0)
您必须使用Absolutelayout
的{{1}}内容:
relativelayout
不是px
android:layout_x="100dp"
均用于android:layout_y="100dp"
。