Раздувать вид без наценки
У меня есть этот код
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;