Как использовать надстрочный индекс в flex? - PullRequest
1 голос
/ 05 января 2011

Я хочу добавить метку в flex для отображения m / s2 (считанные метры в секунду) Я должен был бы использовать надстрочный индекс для этого.

Я опробовал следующий код, который выдает ошибку компиляции.

var richtxt1:RichText = new RichText();
richtxt1.text="m/s";
var richtxt2:RichText = new RichText();
var span:SpanElement = new SpanElement();
span.text = "2";    
span.baselineShift = "superscript"; 
richtxt2.addChild(span);
richtxt1.text=rixhtxt1.txt + richtxt2.text

Я получаю ошибку компиляции для строки richtxt2.addChild(span)

Ошибка

Implicit coercion of a value of type flashX.textLayout.elements.SpanElement 
to unrelated type flash.Display.DisplayObject

Ответы [ 2 ]

1 голос
/ 05 января 2011

Я думаю, вы должны сделать что-то вроде этого

var xmlText:String = "<TextFlow xmlns='http://ns.adobe.com/textLayout/2008'>" +
                     "m/s <span baselineShift='superscript'>2</span>" +
                     "</TextFlow>";

var txtFlow:TextFlow = TextFlowUtil.importFromXML(xmlText);

var richTxt:RichText = new RichText();
richtxt.textFlow = txtFlow;

Я не проверял это, поэтому, пожалуйста, извините меня за ошибки компиляции.

0 голосов
/ 31 октября 2012

Это код, который я использовал в своем приложении для iPad для выполнения вышеупомянутого:

var xmlText:String = "m/s <span baselineShift='superscript'>2</span>";
var txtFlow:TextFlow = TextFlowUtil.importFromString(xmlText);
var richTxt:RichText = new RichText();              
richTxt.textFlow = txtFlow;
this.addElement(richTxt);

Он основан на кайчаках и информации, которую я нашел на сайте Adobe .Различия:

  • Я удалил разметку TextFlow, но оставил в HTML;
  • importFromString, а не importFromXML;и
  • Я добавил this.addElement (richText) для отображения элемента.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...