Android

Android「文字への打ち消し線ON/OFFトグルができない」の解決方法

ボタンをポチっと押したら、文字に打ち消し線が入って

もう一度ポチっと押したら打ち消し線が消える

これをやりたかったけど、うんともすんとも反応が無い!

ちなみに、文字に打ち消し線を入れるのは

val paint = textView.paint
paint.flags = it.alarmTimeText.paintFlags or Paint.STRIKE_THRU_TEXT_FLAG
// コレやらないとギザギザになる
paint.isAntiAlias = true

 

打ち消し線を消すのは

val paint = textView.paint
paint.flags = 0

で出来ます。

 

出来ます、、けど描画前の初期化処理では効くけど、ユーザー操作で打ち消し線追加/解除させる処理が反応しないのです。

 

そこで、TextViewが生きているのか確認の為に、直前で文字を入れてみたら、なぜか打ち消し線追加/解除処理反応するようになりました(ナゾ)
(※ textのセットは打ち消し線処理の後でもOK)

// この行を足す
textView.text = hoge

val paint = textView.paint
paint.flags = it.alarmTimeText.paintFlags or Paint.STRIKE_THRU_TEXT_FLAG
paint.isAntiAlias = true

 

ご参考まで

(何か僕がやらかしてたら、教えて下さい m(_ _)m)

 

開発情報をtwitterで毎日つぶやいているのでフォローお願いしまーす。