I have a fixed background-image and showing another image on top of it. Here is the 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>
Now, how can I change the layout_x, layout_y of image-id search_pin from code?
Try this:
AbsoluteLayout.LayoutParams params = ((AbsoluteLayout.LayoutParams) test_image.getLayoutParams());
params.x = 100;
params.y = 100;
test_image.setLayoutParams(params);
Absolute Layout is deprecated.
For this case, i would suggest to use FrameLayout.
One more thing, dp or dip is more preferrable other than px.
As android support multiple screen resolutions, its not good to mention fixed co-ordinates for a particular widget.
Ayaz Akbar
You must use Absolutelayout
intead of relativelayout
:
android:layout_x="100dp"
not px
android:layout_y="100dp"
both used for absolutelayout
.
来源:https://stackoverflow.com/questions/7766321/android-how-to-change-layout-x-layout-y-in-an-absolutelayout-dynamically