Установка полей для просмотра изображений динамически - PullRequest
1 голос
/ 17 августа 2011

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

Ответы [ 2 ]

7 голосов
/ 17 августа 2011

Вы, вероятно, ищете что-то вроде этого: 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.

0 голосов
/ 27 апреля 2015

создает макет динамически и устанавливает его параметр, так как 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)
...