2012-05-01 1 views
0

Я работаю над графическим интерфейсом, имеющим некоторые BasicEditFields.Как я могу стабилизировать содержимое BaseEditField contentHeight?

Экран имеет несколько менеджеров, ButtonFieldss, LabelFields и так далее.

После изменения текста поля getContentHeight() возвращает большее значение. (37 с некоторым текстом, 38 с другим текстом)

Я указал прописку и шрифт, но высота содержимого изменяется с текстовым полем.

Есть ли способ иметь фиксированный размер для моего BasicEditField, который не будет меняться в зависимости от текстового содержимого?

Примечание getPreferredHeight() возвращает постоянное значение 37 в соответствии с размером шрифта.

ответ

0

Вы можете достичь, подклассов EditField и первостепенную sublayout:

 protected void sublayout(int w, int h){ 
      super.sublayout(w, h); 
      setExtent(w, yourFixedHeightHere); 
     } 

Я не уверен, если вызов super требуется.

+0

не нужно требовать супер здесь. –

+0

Собственно, подкласс предназначен для подклассов менеджера. Тем не менее, тот же метод отлично работает при вызове Field.layout (int w, int h). Обратите внимание, что без вызова super.layout (w, h) текст не получается. Поэтому, я думаю, нам нужно вызвать super.layout (w, h); – Bamaco

Смежные вопросы