2017-04-16 26 views
1

Html.fromHtml(String text)を使用しようとしましたが、Html.fromHtml()は廃止され、動作しないようです。どうすればこの問題を解決できますか?下付き文字と上付き文字と特殊文字を使用してテキストを書き込むにはどうすればよいですか?

あなたが例を見ることができますここ:

申し訳ありませんが、これは何を意味するのかである:

TextView tv; 

private void function(String data){ 

    if (data.equals("a")) { 
     newString+="a"; 

    } else if (data.equals("x^2")) { 
     newString += Html.fromHtml("x<sup><small>2</small></sup>") 
    } 
} 
tv.setText(newString); 

結果はX が、X2ではありません。

+0

どのように 'fromHtml()'を試しているかを実証する[mcve]を提供し、**詳細に**を書いてください。 – CommonsWare

+0

@CommonsWare申し訳ありませんが、わかりやすさのために質問を編集しました。ありがとうございました。 –

答えて

2

以下のコードでHtml.fromHtml()を置き換えます

@SuppressWarnings("deprecation") 
public static Spanned fromHtml(String html){ 
    Spanned result; 
    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) { 
     result = Html.fromHtml(html,Html.FROM_HTML_MODE_LEGACY); 
    } else { 
     result = Html.fromHtml(html); 
    } 
    return result; 
} 
0

newStringを取り除きます。または、CharSequenceに変更し、TextUtils.concat()を使用してHtml.fromHtml()の出力を追加します。それはそのままで、テキストを書式設定してから、Stringに変換して書式を削除します。

関連する問題