1

我有一个具有以下属性的类

@property (strong,nonatomic) NSString* test1; 

.m 文件

-(void)doStuff
{
userLocationManager = [[CLLocationManager alloc]]init]; //has been synthesized already
userLocationManager.delegate = self;
userLocationManager.distanceFilter = kCLDistanceFilterNone; 
userLocationManager.desiredAccuracy = kCLLocationAccuracyBest;
[userLocationManager startUpdatingLocation];
NSLog(@"%@",self.test1); //logs (null)
}

-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
self.test1 = @"Hello!";
[userLocationManager stopUpdatingLocation];
}

然后,我有一个初始化 locationmanager 等的类,我最终调用locationManager:didUpdateLocations.我然后self.test1=@"Hello"在这个方法中做一个简单的,看看我是否可以从那个函数中分配字符串。在另一种方法中,我 NSLog self.test1,查看它是否已更新,但我(null)在控制台中得到了。是locationManager:didUpdateLocations异步还是什么?谢谢!~地毯嘶嘶声

编辑:添加了更多代码以使问题更清楚。当我从另一台计算机物理复制代码时,请原谅任何语法错误。它编译得很好。

4

1 回答 1

2

确保您的班级是 CLLocationManagerDelegate 的代表。

于 2013-06-26T13:37:51.730 回答