例子
self.accessibilityTraits |= UIAccessibilityTraitAdjustable;
添加 UIAccessibilityTraitAdjustable 选项。但是如何从这样的掩码中删除一个选项,而不必设置所有内容?
例子
self.accessibilityTraits |= UIAccessibilityTraitAdjustable;
添加 UIAccessibilityTraitAdjustable 选项。但是如何从这样的掩码中删除一个选项,而不必设置所有内容?
它与标志的补充:
self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
如果self.accessibilityTraits
是:
000110
并且UIAccessibilityTraitAdjustable
是:
000100
(这些值是示例;我没有查找实际值)
然后 self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
是:
000110
& 111011
= 000010
尝试self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
~
反转位,因此要保留的位现在为 1,要清除的位为 0。与左侧变量进行与运算将保留在 的相应位置具有 1 的位,~UIAccessibilityTraitAdjustable
并将清除其中具有 0 的位的对应位置~UIAccessibilityTraitAdjustable
。
self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
~UIAccessibilityTraitAdjustable
反转所有位,将代表您选项的位保留为0
. 二进制文件并负责其余部分。
self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
~
反转位掩码 (NOT) 以包含除给定位之外的所有位,并且&=
AND
s 使用变量删除位的结果。