I think that's a bug that's being fixed as we speak. You could try setting
text="" and calling validateNow before setting a new textflow.
Thanks for the answer, but unfortunately it didn't help.
I agree it has to be something like that - forcing a refresh/revalidate of some sort...
Forgot to mention eartlier:
When mouse-clicking on the RichEditableText area which shows a mixture of previous text + new text ==> the text is "refreshed" and all appears well.
Can you help?
I did not spend time to figure out a workaround. IIRC, the issue is that
the method remeasureText() in RichEditableText.as needs to return false, but
doesn't. There are various ways you might be able to get it to return
false. Maybe if you step through it you can figure out which one will be
easiest to hack.
I encountered exactly the same issue as the OP. Tried a lot of things like: Settting the text property to "", or setting textFlow to null, etc. To no avail. What did make a difference however was when I gave the RichtEditableText a fixed width. So in conclusion:
Percent width (eg. 100%) doesn't work, whereas a fixed width (eg. 300) works just fine.
I had this same issue. What i had to do was the following.
messageTextFlow = null; // this was my textflow needed to null out
richTxt.validateNow(); // this was the refresh the RichEditableText that uses the textFlow
messageTextFlow =TextConverter.importToFlow(__Data.Standard, TextConverter.TEXT_FIELD_HTML_FORMAT) //this set it to the new info
richTxt.validateNow(); // refresh to new
This fixed my issue hope it helps you. I did this on my set data function.
I also encountered this bug (and spent abount a day going crazy before finally finding this thread). I attempted both of the workarounds listed by GiantRobotKitten and stubbs311, and only GiantRobotKitchen's workaround of using a fixed width for the RichEditableText was successful. Thanks and good luck to all!
I have the same issue and i tried many ways to fix this bug. Only one works - call validateNow() method after changing textFlow in RichText. It's work for me.