Как отобразить метку с динамическим размером внутри скроллера

У меня проблема с отображением метки в одном из моих приложений.

У меня есть вид, где я показываю ярлык. Текст этого ярлыка может быть обновлен в любое время, и этот текст может состоять из одного слова, так как это может быть длинный текст с некоторыми символами новой строки.

Если весь текст может поместиться в родительском представлении, я хочу, чтобы он был центрирован по вертикали. Если он слишком длинный, я хочу отобразить полосу прокрутки.

Так что я использую Scroller:

<s:Scroller left="5" top="50" right="5" bottom="5">
    <s:Group> 
        <s:Label id="description" text="{hostComponent.description}"
                 width="100%" verticalCenter="0"/>
    </s:Group>        
</s:Scroller>

Если текст короткий, метка отцентрирована, как и ожидалось, но когда текст достаточно длинный для отображения полосы прокрутки, я не вижу первые строки (9)

Если я уйду verticalCenter="0" тогда длинный текст будет отображаться нормально, но короткий текст больше не будет центрирован по вертикали.

У кого-нибудь есть объяснение этому и / или решение моей проблемы?

1 ответ

Решение

Попробуйте использовать HGroup:

<s:Scroller id="scroller" left="5" top="50" right="5" bottom="5">
    <s:HGroup verticalAlign="middle" width="100%" height="100%"> 
        <s:Label id="description" text="{hostComponent.description}"
                 width="100%"/>
    </s:HGroup>        
</s:Scroller>
Другие вопросы по тегам