may I know how to set margin in imageview dynamically?
Asked
Active
Viewed 2.1k times
1
-
Try this: http://stackoverflow.com/questions/3416087/how-to-set-margin-of-imageview-using-code-not-xml – pav Aug 16 '11 at 21:28
2 Answers
8
You're probably looking for something like this: http://developer.android.com/reference/android/view/View.html#setLayoutParams(android.view.ViewGroup.LayoutParams)
Note this part of the method description though:
These supply parameters to the parent of this view specifying how it should be arranged
Which means that if you have an ImageView inside of a LinearLayout, you need to supply the method with LinearLayout.LayoutParams, like this:
ImageView image = new ImageView(this);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(100, 100);
params.setMargins(1, 1, 1, 1);
image.setLayoutParams(params);
And then you just call setMargins or set the specific leftMargin, bottomMargin etc. properties of the LayoutParams.
Lasse P
- 255
- 5
- 9
0
create layout dynamically and set its parameter as setmargin() will not work directly on an imageView
ImageView im; im = (ImageView) findViewById(R.id.your_image_in_XML_by_id); RelativeLayout.LayoutParams layout = new RelativeLayout.LayoutParams(im.getLayoutParams()); layout.setMargins(counter*27, 0, 0, 0);//left,right,top,bottom im.setLayoutParams(layout); im.setImageResource(R.drawable.yourimage)
Muhammad Adil
- 437
- 6
- 11