美文网首页
位移枚举NS_OPTIONS的使用和存储

位移枚举NS_OPTIONS的使用和存储

作者: iOS劝退师 | 来源:发表于2018-01-10 16:49 被阅读0次

NS_ENUM定义的枚举不能几个枚举项同时存在,只能选择其中一项

而NS_OPTIONS几个枚举项同时存在:如下

因此只要枚举值需要用到按位或(2个及以上枚举值可多个存在)就使用NS_OPTIONS,否则使用NS_ENUM

创建方法如下:

小括号中第一个为NSUInteger这个为固定值,第二个为枚举类型,自己定义 创建

那么这类枚举要怎么存储呢

举个例子使用NSUserDefaults存储

NSUserDefaults支持的数据类型有:NSNumber(NSInteger、float、double),NSString,NSDate,NSArray,NSDictionary,BOOL.因此不能用下图方法存储。

因此我们要将它转换一下,如下图

既然存储完了,我们读取之后要怎么使用呢

位移枚举要使用&符号来判断,而不是用==来判断

相关文章

  • 位移枚举NS_OPTIONS的使用和存储

    NS_ENUM定义的枚举不能几个枚举项同时存在,只能选择其中一项 而NS_OPTIONS几个枚举项同时存在:如下 ...

  • iOS 枚举 NS_OPTIONS和enum 位移枚举和枚举

    1. NS_OPTIONS是个什么的东西 基本概念 << 位运算 2进制中所有的bit向左移动 & 运算 | 运算...

  • iOS开发 枚举类型NS_ENUM和NS_OPTIONS的区别

    NS_ENUM通用枚举值 NS_OPTIONS位移相关操作的枚举值 通常情况下我们用的枚举是NS_ENUM 当一个...

  • iOS中NS_OPTIONS 位移枚举详解

    OC中NS_OPTIONS的使用 OC 常用的枚举有两种类型,分别是 NS_ENUM 和 NS_OPTIONS ,...

  • 位移枚举NS_OPTIONS详解

    位运算知识简介 按位与&对应的两个二进制位均为1时,结果位才为1,否则为0(与1相&就保持原位,与0相&就为0)举...

  • iOS NS_OPTIONS 位移枚举

    『前言』 枚举值是一个整形(int),并且它不参与内存的占用和释放,枚举定义变量即可直接使用,不用初始化.在代码中...

  • iOS NS_OPTIONS 位移枚举

    『前言』 枚举值是一个整形(int),并且它不参与内存的占用和释放,枚举定义变量即可直接使用,不用初始化.在代码中...

  • 位运算之NS_OPTIONS

    分享一条枚举值的小知识吧——使用NS_OPTIONS的正确姿势。我们常用NS_ENUM和NS_OPTIONS来定义...

  • iOS之规范1

    iOS之规范1 参考链接:参考1,参考2,参考3 枚举类型 枚举推荐使用NS_ENUM和NS_OPTIONS宏定义...

  • 位移枚举

    位移枚举和普通枚举的区别位移枚举可以传递多个参数,普通的枚举只能传递单个参数 举个?在SDWebimage里有的地...

网友评论

      本文标题:位移枚举NS_OPTIONS的使用和存储

      本文链接:https://www.haomeiwen.com/subject/pqbonxtx.html