2012-02-10 4 views
1

Flex 3で連絡先リストを実装していますが、今はリストフィルタリングを実装して結果を表示しています。しかし、私は結果に一致する文字を強調したい、これを達成することは可能ですか?例:Flex 3:文字列内の一部の文字のハイライト(背景の変更)

enter image description here

+0

htmlText? http://livedocs.adobe.com/flex/3/html/help.html?content=textcontrols_04.html –

答えて

0

あなたはthisライブラリを使用することができます。 gskinnerのexampleをご覧ください。 setTextFormatを使用して一部の文字の書式を変更することもできますが、このアプローチではテキストの背景色を変更することはできません。背景色を変更する必要がない場合は、テキスト形式またはTextRangeを使用するだけで十分です。

100%解決策が必要な場合は、thisのような解決策を掘り下げてください。または、より古くていい投稿をthisと読んでください。希望はどこから始めるのか考えています。

+0

他の方法はありませんか? – Rui

+0

解決策を見つけるのに役立つリンクをいくつか追加しました。 –

+0

これはあなたを助けましたか?これが助けになったのであれば、答えを受け入れることができます。 –

0

背景色を変更するには、LabelまたはTextオブジェクトをHBoxの内部に配置します。

<mx:HBox> 
    <mx:Label text="{contact.name}"/> 
</mx:HBox> 

次に、HBoxでbackgroundColorを設定します。これはLabel#親として参照できます。あなたが動的な連絡先リストを作成しているので、私はあなたが配列にそれらを持っているし、この方法は高価なことができますスタイルを設定し、

var currentContact:Label = myContactLabelsArray.getItemAt(i); 
... 
Container(currentContact.parent).setStyle("backgroundColor","Yellow"); 

しかし名前が一致するかどうかを確認するために、配列をループしていると仮定しますhttp://livedocs.adobe.com/flex/3/html/help.html?content=styles_08.html

関連する問題