作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我知道我不能有这样的东西:
@property (strong, nonatomic) BOOL didSomethingHappen;
我试图复制的是,在从 TableViewCell 继续的特定 ViewController 中,如果提交了特定操作,则将 BOOL didSomethingHappen
设置为 True。现在,如果您从不同的 TableViewCell 转到同一个 View Controller ,那么 didSomethingHappen 应该是默认值。
我认为我需要的是为每个单独的 ViewController 对象提供一个很好的强 boolean 值。有人能告诉我如何实现这一目标吗?我是 Objective C 的新手。
回顾一下。
| Table Cell 1 | ----------> | VC with didSomethingHappen |
| Table Cell 2 | ----------> | VC with !didSomethingHappen |
| Table Cell 3 | ----------> | VC with didSomethingHappen |
非常感谢你们。
最佳答案
(strong)
不会在这里帮助你。 (strong)
与属性赋值处理引用计数的方式有关。如果将对象分配给 (strong)
属性,则分配对象的引用计数会增加,从而防止在属性持有引用时释放它。 (weak)
属性不会执行此操作,因此当属性持有引用时,引用的对象可能会被释放。在这种情况下,该属性将设置为 nil。
由于 BOOL 是内部类型而不是对象,它的值只是简单地分配给属性,属性不持有引用;所以你不能让它成为 (strong)
或 (weak)
。
每个对象实例都有属性。因此,您需要确保每个单元格的操作实例化 View Controller 的新副本并在调用 segue 之前适本地分配 bool(或作为 prepareForSegue
的一部分)。
关于ios - 如何在 Objective C 中创建一个强大的 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22724390/
我是一名优秀的程序员,十分优秀!