我正在使用下面的这一行来在我的 TextView 上设置删除线:
tv.setPaintFlags(tv.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
但是稍后在片段中,如果他们再次单击 TextView,我希望删除删除线。我可以使用哪一行代码来简单地使 TextView 再次以正常格式显示文本?
提前致谢!
我正在使用下面的这一行来在我的 TextView 上设置删除线:
tv.setPaintFlags(tv.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
但是稍后在片段中,如果他们再次单击 TextView,我希望删除删除线。我可以使用哪一行代码来简单地使 TextView 再次以正常格式显示文本?
提前致谢!
我最终在网上找到了这个:
tv.setPaintFlags(tv.getPaintFlags() & (~ Paint.STRIKE_THRU_TEXT_FLAG));
这成功地删除了删除线,因此我在OnListItemClick
检查我所做的数据库以查看该项目是否已被删除(在我的情况下购买)后在我的方法中调用了它。
另一种方法是简单地将值设置setPaintFlags
为零。
tv.setPaintFlags(0)
笔记:
这将删除您的文本和其他字体设计的删除线,如果它不适用于您的视图,您可以自由使用。
您可以在OnClickListener
上设置一个TextView
,重置绘制标志,并调用它invalidate()
,以便它重新绘制自己。
设置 AntiAlias 帮助我使文本看起来不那么失真
科特林
tv.paintFlags = Paint.ANTI_ALIAS_FLAG