Если это поля, которые вы будете часто использовать с одинаковым интервалом, самое простое решение - расширить поле, и в конструкторе вызвать для него setMargin()
.
public class SpacedLabelField extends LabelField {
public SpacedLabelField(String text, long style) {
super(text, style);
setMargin(10, 10, 10, 10);
}
}
Я бы порекомендовал setMargin()
, потому что менеджеры возьмут эту информацию и предоставят вам равномерный интервал.Например, у вас есть поле A с нижним полем 10 и поле B с верхним полем 10. Если вы сложите A поверх B, у вас будет расстояние между ними 10, а не 20 (по крайней мере, это имеетбыло мое наблюдаемое поведение в 5.0).
В любом случае, теперь вместо того, чтобы создавать поле и затем вызывать setMargin () для каждого, вам нужно только вызвать свой класс, и он уже будет отформатирован для вас.
В качестве альтернативыВы могли бы создать своего собственного менеджера и в вызове sublayout()
установить интервал между полем, когда вы их размечаете и позиционируете.