riz*_*zle 0 boolean objective-c nsnumber nsmutablearray ios
所以我试图改变我所制作的NSMutableArray中的所有布尔值.
我有:
@property (nonatomic, retain) NSMutableArray *isDinosaurTapped;
Run Code Online (Sandbox Code Playgroud)
并合成:
@synthesize isDinosaurTapped;
Run Code Online (Sandbox Code Playgroud)
并设置[EDITED to show isDinosaurTapped]:
NSMutableArray *newDinosaurTaps = [[NSMutableArray alloc] init];
for( int i = 0; i < [dinoSprites count]; i++ )
{
NSNumber *isTapped = [posPlist valueForKeyPath:[NSString stringWithFormat:@"Dinosaurs.Dinosaur_%i.isTapped", i]];
[newDinosaurTaps addObject:isTapped];
}
self.isDinosaurTapped = [newDinosaurTaps copy];
for( int i = 0; i < [isDinosaurTapped count]; i++ )
{
[isDinosaurTapped replaceObjectAtIndex:i withObject:[NSNumber numberWithBool:NO]];
}
Run Code Online (Sandbox Code Playgroud)
当我构建它的时候很好,但是当我实际构建并运行时,我不断得到一个SIGABRT:' - [__ NSArrayI replaceObjectAtIndex:withObject:]:发送到实例的无法识别的选择器.
我是否错误地设置了NSMutableArray的属性?但根据这个,我的属性应该没问题.
非常感谢任何反馈!:d
您正在尝试改变不可变数组.它是声明为NSMutableArray还是NSArray,如果它是可变的,你打电话-copy,还是-mutableCopy?
在核心基础中,NSMutableArrays在内部称为__NSArrayM(用于可变),NSArrays称为__NSArrayI(用于不可变).
| 归档时间: |
|
| 查看次数: |
490 次 |
| 最近记录: |