1

我的 ViewController 中有两个变量。在我的.h我这样定义它们。

@property (nonatomic, strong) NSString *myLongitude;
@property (nonatomic, strong) NSString *myLatitude;

在我的.m我已经合成了它们。像这样。

@synthesize myLatitude = _myLatitude;
@synthesize myLongitude = _myLongitude;

然后在函数中updateLocation我将这些变量设置如下。

 _myLongitude = [[NSString alloc]initWithFormat:@"%f",location.longitude];
   _myLatitude = [[NSString alloc]initWithFormat:@"%f",location.latitude];

当我在设置这些变量之后记录这些变量时,我得到了正确的值。但是当我在更新函数之后执行的另一个函数中记录值时,这些变量会变为NULL. 这是我的日志。

        NSLog(@"longitude val is = %@", _myLongitude);
        NSLog(@"latitude val is = %@", _myLatitude);

有什么帮助吗?

4

1 回答 1

0

然后在函数 updateLocation 中,我将这些变量设置如下。

很明显,这些是类的属性,updateLocation不是alloc吃和initialise 它们的正确位置。

你应该用 , viewDidLoad, init, 或类似的方法来做。

如果要重新设置该值,请将其设置为nil然后放置新值,而不是这样做。

于 2013-02-28T09:07:06.220 回答