如何在不抖动的情况下滚动RichEditableText

时间:2014-08-12 23:01:51

标签: actionscript-3 flash flex flex4

<s:Scroller width="100%" height="100%" id="chatScroller">
    <s:RichEditableText
    id="mainChat"
    textFlow="{TextConverter.importToFlow(text, TextConverter.TEXT_FIELD_HTML_FORMAT)}"
    selectionHighlighting="always"
    selectable="false"
    focusedTextSelectionColor="#32EB28"
    unfocusedTextSelectionColor="#32EB28"
    editable="false"
    lineHeight="25"
    styleName="chatWin"
    fontSize="10"
    paddingTop="20"
    paddingBottom="20"
    height="100%"
    width="461">
        <s:TextFlow >
        </s:TextFlow>
    </s:RichEditableText>
</s:Scroller>

我正在更新text变量,因此我已添加此事件:

chatScroller.addEventListener(FlexEvent.UPDATE_COMPLETE, scrollBottom);

        private function scrollBottom(e:FlexEvent):void {

                chatScroller.verticalScrollBar.value = chatScroller.verticalScrollBar.maximum;
        }

并且它有效,但是textarea首先进入顶部,然后进入底部,所以这会产生快速发生的摇动效果,我怎么能避免这种情况并使滚动条在底部滚动而不会在它前面走到尽头?请帮助找不到任何解决方案

1 个答案:

答案 0 :(得分:0)

更改文字后立即添加chatScroller.validateNow();