Как освободить пространство между дочерними элементами LinearLayout?

Я программно добавляю пользовательские представления в вертикальный LinearLayout, и я хотел бы, чтобы между представлениями оставалось некоторое пространство. Я попытался добавить: setPadding (0, 1, 0, 1) в свой конструктор CustomView, но, похоже, это не имеет никакого эффекта. Что-нибудь посоветуете?

* Было указано, что я должен использовать поля. Поскольку я динамически добавляю представления, мне нужно установить поля из кода (не в xml). Я считаю, что способ сделать это ниже, но он не работает.

public class MyView extends View
{
    public MyView (Context context)
    {
        super(context);

        MarginLayoutParams params = new MarginLayoutParams(LayoutParams.WRAP_CONTENT,  LayoutParams.WRAP_CONTENT);
        params.setMargins(0, 10, 0, 10);
        setLayoutParams(params);

* Edit. Я также попытался использовать MarginLayoutParams в качестве параметра при добавлении представлений в линейный макет (как показано ниже). Это тоже не сработало:

MarginLayoutParams params = new MarginLayoutParams(linearLayout.getLayoutParams());
linearLayout.setMargins(0, 10, 0, 10);
linearLayout.addView(view, params);
144
задан A-Sharabiani 26 September 2019 в 03:40
поделиться