[英]if self.bitmask |= flag adds an option, how to remove one?
例
self.accessibilityTraits |= UIAccessibilityTraitAdjustable;
添加UIAccessibilityTraitAdjustable選項。 但是如何從面具中刪除一個選項,而不必設置所有內容?
並與標志的補充:
self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
如果self.accessibilityTraits
是:
000110
和UIAccessibilityTraitAdjustable
是:
000100
( 這些值是示例;我沒有查找真實值 )
然后self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
是:
000110
& 111011
= 000010
嘗試self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
~
反轉的位反轉為要保留的位現在為1,要清除的位為0.使用左側變量對其進行保留將保留在~UIAccessibilityTraitAdjustable
的相應位置具有1的位,並清除位在~UIAccessibilityTraitAdjustable
的相應位置有0。
self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
~UIAccessibilityTraitAdjustable
所有位反轉,將表示您選項的位置保留為0
。 二進制並負責其余部分。
self.accessibilityTraits &= ~UIAccessibilityTraitAdjustable;
~
將位掩碼(NOT)反轉為包含除給定位之外的所有位,並且&=
AND
s將結果與變量一起移除該位。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.