によって異なる色のストライキを作成し、私はHTMLを使用しようとしたが、「私はまた、この方法が、ドンの下にしようとした私は赤のように、黒とstrikthroughなどのテキストの色とのTextViewを作成しようとしています
String styledText = "<span style='color:red;text-decoration:line-through'><span style='color:black'>TEXT</span></span>";
myText.setText(Html.fromHtml(styledText));
を動作するようですしませんトンあなたはTextView
あなたは単にあなたがあなたの色でストライク線を描画するTextView
のサブクラスを作成することができます内のすべてのテキストを打つしたい場合は取り消し線
myText.setPaintFlags(myText.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
これはうまくいくはずですが、私は単純な解決策を探しています。 – mkso
@mkso:実際、私はそれがslaytonよりもはるかに簡単になるとは思わない。内部的には、取り消し線のテキストは 'StrikeThroughSpan'で表され、' StrikeThroughSpan'は '(Text)Paint'オブジェクトにフラグを設定します。そのクラスは残念ながら描画にネイティブコードを使用していますが、Javaソースコードにはストライキの色に影響を与える変数はありません(既に自分自身を発見したようです)。私はあなたが異なる色にしたい場合は、図面を手動で行う必要があると思います。 –
@mkso、これは単純な解決策です。基本的には、オーバーライドする必要がある唯一の方法は 'onDraw'メソッドです。最初に 'super.onDraw()'を呼び出してから、ストライクをcolorに設定してから線を引いてください。その本当に簡単 – slayton