Установка отступов в приложении blackberry - PullRequest
1 голос
/ 13 апреля 2011

Я пытаюсь установить отступ между различными полями в приложении Blackberry.Я могу использовать метод setpadding, но это кажется излишним для того, что я пытаюсь достичь.Я просто хочу установить постоянный интервал вокруг всех полей.Возможно ли это без использования setpadding?Мои поля являются частью менеджеров вертикального поля, если это помогает.

Спасибо

1 Ответ

3 голосов
/ 13 апреля 2011

Если это поля, которые вы будете часто использовать с одинаковым интервалом, самое простое решение - расширить поле, и в конструкторе вызвать для него 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() установить интервал между полем, когда вы их размечаете и позиционируете.

...