Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android: how to change layout_x, layout_y in an AbsoluteLayout dynamically?

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?

like image 252
Avisek Chakraborty Avatar asked Jan 19 '23 12:01

Avisek Chakraborty


2 Answers

Try this:

AbsoluteLayout.LayoutParams params = ((AbsoluteLayout.LayoutParams) test_image.getLayoutParams());
params.x = 100;
params.y = 100;
test_image.setLayoutParams(params); 
like image 149
Peter Knego Avatar answered Jan 21 '23 03:01

Peter Knego


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.

like image 33
Paresh Mayani Avatar answered Jan 21 '23 03:01

Paresh Mayani