J'ai une page de recherche et de résultats que je voudrais mettre en évidence les mots-clés qui ont été recherchés, dans le texte des résultats. Il a été suggéré que j'utilise TextLine pour cela, mais j'ai du mal à comprendre comment le faire fonctionner. J'ai commencé une application factice simple, compilable et a été espérant que quelqu'un pourrait me donner quelques conseils sur la façon de continuer:Flex 4 - Mettre en surbrillance des mots-clés dans un bloc de texte en utilisant TextLine
<?xml version="1.0" encoding="utf-8"?>
<s:Application
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
initialize="initApp();">
<fx:Script>
import flash.display.Sprite;
import flash.text.engine.*;
private var textLine:TextLine;
private function initApp():void {
var normalFormat:ElementFormat = new ElementFormat(null, 12, 0x000000);
var highlightFormat:ElementFormat = new ElementFormat(null, 14, 0xff0000);
var textBlock:TextBlock = new TextBlock(new TextElement("This is text that has KEYWORDS. I would like to highlight these KEYWORDS by changing their font color and adding a light yellow background graphic.", normalFormat));
textLine = textBlock.createTextLine();
textLine.y = 100;
embeddedFontHolder.addChild(textLine);
}
</fx:Script>
<mx:UIComponent width="100%" id="embeddedFontHolder" />
</s:Application>
Quelqu'un at-il des idées?
Cheers, Baz
Hmm. Je ne le savais pas. Cependant, je pense personnellement que vous êtes mieux d'utiliser css, parce que maintenant vous devez changer la classe action-script pour changer le style des mots surlignés. Avec css, vous avez une séparation plus claire entre la logique de l'interface utilisateur et le format de l'interface utilisateur. – Treur