[_weatherAPI currentWeatherByCoordinate:CLLocationCoordinate2DMake(location.coordinate.latitude, location.coordinate.longitude) withCallback:^(NSError *error, NSDictionary *result) {
downloadCount++;
if (downloadCount > 1)
if (error) {
}
_saveTemp = result[@"main"][@"temp"];
在这个方法中,我将temp保存到NSString中。
@property (nonatomic) NSString *saveTemp;
如何在此方法之外访问此NSString的值?例如,我正在尝试这样做
- (void)viewDidLoad
{
NSLog(@"%@", _saveTemp);
}
答案 0 :(得分:0)
您是否尝试过self.saveTemp
?
此外,您应该创建属性strong
@property (strong, nonatomic) NSString *saveTemp;
答案 1 :(得分:0)
你正在做的是完全正确的,除了在viewDidLoad时_weatherApi ......没有调用Thing,因此_saveTemp未初始化。您应该使用[self setSaveTemp:...]在_weather中设置它,以便正确保留它。
答案 2 :(得分:0)
尝试使用“复制”
创建属性@property (copy, nonatomic) NSString *saveTemp;
并尝试调用setter
[self setSaveTemp:result[@"main"][@"temp"]];
-(void)setSaveTemp:(NSString *)saveTemp {
_sateTemp = saveTemp;
}