Вы можете сделать это тремя способами, либо установив передний план в TextView
, либо установив PaintFlag
, либо объявив строку как <strike>your_string</strike>
в strings.xml
. Например,
Через PaintFlag
Это самый простой метод, вам просто нужно установить зачеркнутый флаг в вашем TextView как,
yourTextView.setPaintFlags(Paint.STRIKE_THRU_TEXT_FLAG);
оно пробьет ваш TextView.
Сквозная прорисовка переднего плана
Вы также можете нанести удар по TextView, установив передний план как,
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false">
<shape android:shape="line">
<stroke android:width="1dp" android:color="@android:color/holo_red_dark"/>
</shape>
</item>
</selector>
Теперь вам просто нужно установить выше нарисованное в вашем TextView как foreground
. Например,
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Your Textview with StrikeThrough"
android:foreground="@drawable/strikethrough_foreground" /> <!-- this is available above --!>
Через strings.xml
В этом методе вы должны объявить вашу строку в strings.xml
как вычеркнуть как,
<string name="strike_line"> <strike>This line is strike throughed</strike></string>
Примечание
Но я рекомендую вам пробраться через ваш TextView, установив передний план для рисования. Потому что с помощью drawable вы можете легко установить свой удар по цвету линии (как я установил как красный цвет в примере выше) или по размеру или любому другому стилевому свойству. В то время как в двух других методах текстовый цвет по умолчанию - это удар по цвету.