我正在自定义我的单CLLocationManager
类。
我有
@property (nonatomic, strong) CLLocationManager *sManager;
和
static MyLocationManager* sMyLocationManager=nil;
+(instancetype)sharedLocationManager{
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
sMyLocationManager = [[self alloc] init];
});
return sMyLocationManager;
}
我能够将自己的方法编写为
-(void)settingUserLocationManager{
if(nil== sMyLocationManager.sManager){
sMyLocationManager.sManager = [[CLLocationManager alloc] init];
}
-(void)onStartUpdatingUserLocation{
[sMyLocationManager.sManager startUpdatingLocation];
return;
}
-(void)onStopUpdatingUserLocation{
[sMyLocationManager.sManager stopUpdatingLocation];
}
startUpdatingLocation
和stopUpdatingLocation
是实例方法,这是我如何使用它们,而[CLLocationManager locationServicesEnabled]
是一种类方法。我不知道如何在我的单件类中使用它。
我尝试将其用作
+(BOOL)locationServicesEnabled {
return [sMyLocationManager.sManager locationServicesEnabled];
}
但没有按预期工作。请添加一些想法。
答案 0 :(得分:0)
使用
+(BOOL)locationServicesEnabled {
return [[sMyLocationManager sharedLocationManager] locationServicesEnabled];
}
答案 1 :(得分:0)
由于您使用类包装CLLocationManager,因此类方法遵循相同的技术。
您的课程将包含类似
的方法+ (BOOL)locationServicesEnabled
{
return [CLLocationManager locationServicesEnabled];
}