NSInvalidArgumentException isKindOfClass

时间:2013-08-05 20:40:31

标签: ios objective-c map openstreetmap

我遇到了一个我无法理解的问题,我正在使用一个库来使用Map Open Source Map(https://github.com/route-me/route-me),这个例子运行得很完美,而且我相信它不会与代码,我相信它是配置中的东西。 那么如果我进行以下调用会发生什么:

RMMarkerManager *markerManager = [mapView markerManager];

我收到一条错误,指出UIView类没有方法markerManager:

2013-08-05 17:18:33.573 MapOffline [1310:907] 由于未捕获的异常'NSInvalidArgumentException'而终止应用,原因:' - [UIView markerManager]:无法识别的选择器发送到实例0x1d88fbb0' *

没有entanto,se eu adicionaravalidação,ocódigofuncionaperfeitamente:

if ([mapView isKindOfClass:[RMMapView class]]) {
    RMMarkerManager *markerManager = [mapView markerManager];
}

示例项目没有这个验证和工作,有人可以告诉我可能是什么? 每当您使用此类的方法时,验证都不是好的。

注意:RMMarkerManager类继承自UIView。


在我的案例中发生的事情是我没有参考示例中项目正在使用的一些图像。 老实说,我不知道与另一个有什么关系,更多的是在项目中添加图像后,一切都很完美。 我保证我没有做任何其他更改。

我的.xib始终按原样配置和引用所有内容。

我不明白为什么会这样,更多这是我的解决方案。

: - /

1 个答案:

答案 0 :(得分:1)

如果您使用了故事板,那么您需要将视图的“自定义类”(在身份检查器面板中)设置为RMMapView。否则,故事板不知道要为您的视图实例化哪个类。

example of setting custom class