在我的应用中,我想让用户设置日期的显示样式。我考虑过只需修改unitFlags即可实现。我的意思是

NSUInteger unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSWeekCalendarUnit | NSDayCalendarUnit;


但这是一个问题:如何为该整数添加或删除NSCalendarUnit

我正在使用NSCalendar从日期获取NSDateComponents

抱歉,如果问题太愚蠢,我对按位运算的工作还不够:(

最佳答案

我不确定这是否是您要寻找的东西,但是您可以使用
“按位或”运算符:

unitFlags |= NSYearCalendarUnit;


并结合使用“按​​位与”和“按位补码”来删除标志;

unitFlags &= ~NSYearCalendarUnit;


要检查标志:

if ((unitFlags & NSYearCalendarUnit) != 0) {
    // NSYearCalendarUnit is set
} else {
    // NSYearCalendarUnit is not set
}

关于iphone - NSCalendarUnit –修改unitFlags,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16305186/

10-10 14:47