Раздувать вид без наценки

У меня есть этот код

View item = View.inflate(context, R.layout.item_layout, null);
    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,
                        LayoutParams.WRAP_CONTENT);
    layout.addView(item, params);

мой item_layout: (обратите внимание на часть android:layout_marginTop="2dip")

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="wrap_content" android:layout_marginTop="2dip" android:layout_width="fill_parent">

    <ImageView android:src="@drawable/pic_unknown" android:id="@+id/image1"
        android:layout_height="50dip" android:layout_width="50dip"
        android:padding="5dip"></ImageView>
</RelativeLayout>

и затем в моем макете я вижу список предметов раздутым, но без полей между ними. Я пробовал с margintop=10dip, но ничего не произошло, моя точка зрения в том, что значение, которое я поместил в макет, не учитывается при расчете с верхним полем или без него, макет такой же.

Как я могу добавить пустое пространство между элементами? Как я могу раздуть пустое пространство между предметами? Можно ли надуть что-то вроде разрыва или пространства? или я должен использовать обходной путь, например, надувая пустой макет с высотой 2dip или что-то еще спасибо

3 ответа

Решение

Последний параметр метода inflate - это параметр, к которому вы добавляете раздутое представление. В вашем случае это null, Попробуйте это вместо этого:

 View item = View.inflate(context, R.layout.item_layout, layout);

Попробуйте вместо этого заполнить RelativeLayout, если ваши поля применяются к внешней стороне.

Вы можете добавить поле в макет, который вы надули, как показано ниже:

final LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                                                                                ViewGroup.LayoutParams.WRAP_CONTENT);
         params.topMargin = 10;
Другие вопросы по тегам