2012-03-05 17 views
1

MultiAutoCompleteTextView内の文字列の背景色を追加しようとしています。Html.fromHtmlを使用したテキストの強調表示

私は、これが正常に動作しているこの

@Override 
protected void replaceText(CharSequence text) { 

    // TODO Auto-generated method stub 
    String styledText = "<font color='red'>"+text+"</font>."; 
    super.replaceText(Html.fromHtml(styledText)); 
} 

のようにHTMLでcharactersequenceを交換しようとしている、multipleAutocompletetextviewでのreplaceTextメソッドをオーバーライドしています。私はフォントの色を変更できます。しかし、私はフォントの背景色を追加したい。誰も私にどのようにこれを達成するために提案することができますか?

(私たちは、私がMultiAutoCompleteTextViewを使用して実装しようとしていますsamething、質問を作成中のタグを追加する方法。私は、選択した文字列の背景を追加したい。)事前

答えて

3

Html.fromHtml

おかげでサポートしていません。背景色を設定します。

Html.fromHtmlから返されたSpannedStringを取得し、BackgroundColorSpanを背景色を設定するテキストに設定する必要があります。以下のような

何か:

new SpannableString(styledText).setSpan(
    new BackgroundColorSpan(Color.YELLOW), 0, styledText.length(), 
     Spanned.SPAN_INCLUSIVE_EXCLUSIVE); 

も参照してください: http://developer.android.com/reference/android/text/SpannableString.htmlhttp://developer.android.com/reference/android/text/style/package-summary.html

あなたにも、追加のHTMLタグをサポートするために、Html.fromHtml(String source, Html.ImageGetter imageGetter, Html.TagHandler tagHandler)に独自のTagHandlerを渡すことができます。 http://developer.android.com/reference/android/text/Html.TagHandler.html

1

Androidで利用できるSpannableStringとBackgroundColorSpanを使用します。