为什么在这里会出现“EXC_BAD_ACCESS”. 上面并没有release ArrLat 啊。。求解 本帖最后由 zzxap 于 2011-08-19 17:39:52 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有可能是你这ArrLat 玩意NULL了 -(void)DoAddAnnotation:(NSArray *)ArrLat longitude:(NSArray *)ArrLng address:(NSArray *)ArrAddress title:(NSArray *)ArrName{ NSLog(@"lat:%@",ArrLat); NSLog(@"lng:%@",ArrLng); NSLog(@"address:%@",ArrAddress); NSLog(@"naem:%@",ArrName); 这里打印出来还有值,不是null的 int num=[ArrLat count]; //为什么在这里会出现“EXC_BAD_ACCESS”. 上面并没有release ArrLat 啊。。求解 } [dic objectForKey:@"lat"]返回的是什么?如果是数组,不要用initWithObjects,用initWithArray试试。 建议在int num=[ArrLat count];之前输出一下ArrLat的retainCount看看是不是计数为0。而且在调用之前在if判断的时候是没有问题的:if ([ArrLat count]>0&&[ArrLng count]>0&&[ArrAddress count]>0&&[ArrName count]>0) { [self DoAddAnnotation:ArrLat longitude:ArrLng address:ArrAddress title:ArrName ];}理论上讲你的代码是不应该有问题的。建议把所有代码贴出来看一下,或者自己在调试的时候看一下在进入方法之前和之后变量的对象是否相同。 ArrLat 啊,参数最好改其它的名字。不然 int num=[ArrLat count]; 会有一个警告 貌似是这样的:NSArray *ArrLat=[[NSArray alloc] initWithObjects [dic objectForKey:@"lat"],nil] ⋯⋯这么改试试:NSMutableArray *ArrLat= [[NSMutableArray alloc] initWithCapacity:20];[ArrLat addObject:@"lat"];我怀疑 dic 这个对象被强制释放了⋯⋯ 外包:iphone andriod手机通讯录web同步功能扩展开发 sina微博 10家不错的iphone编程资源站 没有,和 [ ] 的txt文件如何转化为标准json格式的?ios能直接读么? 合上百度sdk之后出现的问题,求解哦 如何进行viewcontroller堆栈监控 SDWebImage加载图片,放入deque出来的tabelview中出现的问题 cocos2d如何实现framework的热更新? 为什么ios的微信html5网页,会出现这种出界状况, xcode 8旋转右边有一块空白~求大神 cocos2d如何删除本层 ipad系统,代码里如何更改文件关联
{
NSLog(@"lat:%@",ArrLat);
NSLog(@"lng:%@",ArrLng);
NSLog(@"address:%@",ArrAddress);
NSLog(@"naem:%@",ArrName);
这里打印出来还有值,不是null的
int num=[ArrLat count]; //为什么在这里会出现“EXC_BAD_ACCESS”. 上面并没有release ArrLat 啊。。求解
}
而且在调用之前在if判断的时候是没有问题的:
if ([ArrLat count]>0
&&[ArrLng count]>0&&[ArrAddress count]>0&&[ArrName count]>0)
{
[self DoAddAnnotation:ArrLat longitude:ArrLng address:ArrAddress title:ArrName ];
}
理论上讲你的代码是不应该有问题的。
建议把所有代码贴出来看一下,或者自己在调试的时候看一下在进入方法之前和之后变量的对象是否相同。
NSArray *ArrLat=[[NSArray alloc] initWithObjects [dic objectForKey:@"lat"],nil] ⋯⋯
这么改试试:
NSMutableArray *ArrLat= [[NSMutableArray alloc] initWithCapacity:20];
[ArrLat addObject:@"lat"];我怀疑 dic 这个对象被强制释放了⋯⋯