C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了objective-c – didStartMonitoringForRegion为一个startMonitoringForRegion调用两次大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经通过调用startMonitoringForRegion开始了区域监视.但是我发现didStartMonitoringForRegion被调用了两次,而且didEnterRegion被调用了两次.但我只调用一次startMonitoringForRegion.我的代码

- (void) enableRegionMonitoring:(NSMutableDictionary *)LOCATIOnInfoDic{

NSLog(@"started Loc Mon");
lOCMgr = [[CLLOCATIOnManager alloc] init];
[lOCMgr setDelegate:self];
NSString *LOCATIOnId=[[NSString alloc]init];
double latitude=[[LOCATIOnInfoDic objectForKey:@"lat"] doubleValue];
double longitude=[[LOCATIOnInfoDic objectForKey:@"lon"] doubleValue];
if([LOCATIOnInfoDic objectForKey:@"key"]){
    LOCATIOnId=[LOCATIOnInfoDic objectForKey:@"key"] ;
}else{
    LOCATIOnId=@"NA";
}

CLLOCATIOnCoordinate2D mymonLOCATIOn = CLLOCATIOnCoordinate2DMake(latitude,longitudE);
CLRegion *myRegion = [[CLRegion alloc]
                      initCircularRegionWithCenter:mymonLOCATIOn
                      radius:100
                      identifier:LOCATIOnId];
[lOCMgr startMonitoringForRegion:myRegion
                          desiredAccuracy:kCLLOCATIOnAccuracyBest];

}





- (void)LOCATIOnManager:(CLLOCATIOnManager *)manager didStartMonitoringForRegion:(CLRegion *)region{
NSLog(@"Region monitoring started\n%@",[region description]);
}

解决方法

尝试调试.如果你没有时间搞清楚,只需忽略第二个didEnterRegion.即如果didEnterRegion连续两次为同一区域调用,则忽略第二个.

大佬总结

以上是大佬教程为你收集整理的objective-c – didStartMonitoringForRegion为一个startMonitoringForRegion调用两次全部内容,希望文章能够帮你解决objective-c – didStartMonitoringForRegion为一个startMonitoringForRegion调用两次所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。