Динамическая установка полей для просмотра изображения

Могу я узнать, как динамически установить маржу в просмотре изображений?


person davidlee    schedule 16.08.2011    source источник
comment
Попробуйте следующее: stackoverflow.com/questions/3416087/   -  person pav    schedule 17.08.2011


Ответы (2)


Вероятно, вы ищете что-то вроде этого: http://developer.android.com/reference/android/view/View.html#setLayoutParams(android.view.ViewGroup.LayoutParams)

Обратите внимание на эту часть описания метода:

Эти параметры предоставляют родительскому элементу этого представления параметры, определяющие, как оно должно быть организовано.

Это означает, что если у вас есть ImageView внутри LinearLayout, вам необходимо предоставить метод с помощью LinearLayout.LayoutParams, например:

ImageView image = new ImageView(this);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(100, 100);
params.setMargins(1, 1, 1, 1);
image.setLayoutParams(params);

А затем вы просто вызываете setMargins или устанавливаете определенные свойства leftMargin, bottomMargin и т. Д. Для LayoutParams.

person Lasse P    schedule 16.08.2011
comment
Как установить поля для относительного макета? - person Shivam; 21.05.2019

динамически создавать макет и устанавливать его параметр, так как setmargin () не будет работать непосредственно с 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)
person Muhammad Adil    schedule 27.04.2015