Используется Backberry JDK (5.0, если необходимо).
У меня есть собственный менеджер, который содержит RichTextField. Я хочу, чтобы высота поля менялась в зависимости от объема текста в RichTextField.
Код подслоя выглядит следующим образом (rtf является объектом RichTextField):
protected void sublayout(int width, int height) {
int h = rtf.getPreferredHeight();
setExtent(Display.getWidth(), h);
layoutChild(rtf, Display.getWidth(), h);
setPositionChild(rtf, 0, 0);
setExtent(Display.getWidth(), h);
}
Вызов rtf.getPreferredHeight всегда возвращает одно и то же значение, независимо от объема текста (и, следовательно, количества строк на экране).
Есть ли какие-либо подсказки о том, как получить высоту RichTextField, когда известно содержание и ширина?