![]() |
1
21
我也有类似的错误,现在解决了。问题是在本地声明locationmanager变量。将其声明为类变量,并确保直接或通过属性retain(如果使用arc,则为强)将其保留。这就解决了问题!问题was de locationmanager变量已释放,并且从未更新委托。这里的代码: h文件:
m文件:
希望能有所帮助。 |
![]() |
2
2
做
|
![]() |
3
0
您确定没有在某个地方解除分配位置管理器吗?你的代码显示它正在didfishingsunching中分配…方法,但被遗忘(尽管它仍然保留,所以应该仍然有效)。 你甚至看到初始弹出窗口询问你是否可以获得用户位置? |
![]() |
4
0
将代码放入“推送到导航控制器”的视图控制器中。 我的代码是。 在someviewcontroller.h中
在someviewcontroller.m中
我认为问题是由于ARC,locationmanager被释放了。 |
![]() |
5
0
我想知道为什么只有一个使用cllocationManager的类永远无法接到 任何 cllocationManagerDelegate方法的。 结果是:该类是从非主线程初始化的,所以它的cllocationManager是在非主线程上创建的…它甚至可能是一个临时线程。无论如何,用下面的代码包装初始化我的类的调用是使我的cllocationManager委托方法被调用所需要的。
所以底线是:除了主线程之外,不要在任何地方创建cllocationmanager,否则您将永远无法调用委托方法!我曾经知道…只是很久了…叹息。浪费了一天的时间来重新考虑这个问题!因为我读到的所有cllocationmanager-so-i s都没有提到这个,所以我把它贴在这里。希望它能帮助别人! |
![]() |
Duncan C · CLLocation如何实现可均衡协议? 7 年前 |
![]() |
CFRJ · 当用户允许位置跟踪时更新位置 7 年前 |
|
Andy Dewan · 使用Swift将位置发布到iCloud数据库 10 年前 |
|
user3007919 · 使用CLLocation计算两个坐标之间的距离 11 年前 |