【问题标题】:property value not getting passed to other method属性值未传递给其他方法
【发布时间】:2014-08-22 17:28:43
【问题描述】:

在我的头文件中,我声明了一个这样的新属性:

@property (weak, nonatomic) NSString *porperty;

在我的实现文件中,我给属性一个值:

-method1{
 self.property = someString;
 NSLog(@"property = %@", self.property);
}

日志在调试器中显示为 someString 的相同值。好的很好,但是当我尝试在同一个实现文件的下一个方法中使用这个属性时,它失去了它的价值。

-method2{
 NSLog(@"property = %@", self.property);
}

现在调试器显示 (null)。

简单的问题。我知道,但这通常对我有用。我做错了什么?

【问题讨论】:

    标签: ios objective-c properties nsstring automatic-ref-counting


    【解决方案1】:

    这是因为 someString 已在下一个周期释放。 用强替换弱,这将保留你的字符串。

    @property(强,非原子)NSString *porterty;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-23
      • 2020-05-18
      • 1970-01-01
      • 2013-10-19
      • 2013-05-18
      • 2018-07-06
      相关资源
      最近更新 更多