Вот в чем дело: я хочу добавить некоторые изображения программно.Изображения должны иметь topMargin
5dip
, за исключением первого изображения, LinearLayout
с vertical orientation
.ниже сегмента кода:
LinearLayout body = (LinearLayout) findViewById(R.id.body);
for (int i = 1; i <= 4; i++) {
ImageView img = new ImageView(this);
MarginLayoutParams lp = new MarginLayoutParams(-2, -2);
img.setImageResource(R.drawable.image);
if (i != 1) {
lp.setMargins(0, 5, 0, 0);
}
img.setLayoutParams(lp);
body.addView(img);
body.requestLayout();
}
Запустив программу, я вижу 4 изображения (здесь), выровненные по вертикали одно за другим, но нет topMargin
(как в коде, 5dip
),body
является id
из LinearLayout
.вот сегмент XML
:
<LinearLayout
android:id="@+id/body"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#901b0e08"
android:orientation="vertical"
android:paddingLeft="6dp"
android:paddingRight="8dp" >
</LinearLayout>
Я не могу понять, что здесь пошло не так.
Спасибо.