Remove a Paint Flag in Android
android, bitwise-operators
Solution
To remove a flag, this should work:
task_text.setPaintFlags( task_text.getPaintFlags() & (~ Paint.STRIKE_THRU_TEXT_FLAG));
Which means set all the set flags, except of `Paint.STRIKE_THRU_TEXT_FLAG`.
To check if a flag is set (Edit: for a moment I forgot it is java...):
if ((task_text.getPaintFlags() & Paint.STRIKE_THRU_TEXT_FLAG) > 0)
Problem
My code looks like this: ``` TextView task_text = (TextView) view.findViewById(R.id.task_text); task_text.setPaintFlags( task_text.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); ``` This causes a strike through effect to appear on the text. However, I'd like to know how to remove the flag once set, and how to detect that the flag is set. I understand this is a bitwise operation, but I've tried both ~ and - operators, neither work.