与NSMutableArray比较
在我的Array 1
,我从NSDocumentDirectory
加载图像,我加载他们,并添加一个NSMutableDictionary
:
self.images = [NSMutableArray array]; for(int i = 0; i <= 8; i++) { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDir = [paths objectAtIndex:0]; NSString *savedImagePath = [documentsDir stringByAppendingPathComponent:[NSString stringWithFormat:@"Images%d.png", i]]; if([[NSFileManager defaultManager] fileExistsAtPath:savedImagePath]){ NSMutableDictionary *container = [[NSMutableDictionary alloc] init]; [container setObject:[UIImage imageWithContentsOfFile:savedImagePath] forKey:@"image"]; [container setObject:[NSNumber numberWithInt:i] forKey:@"index"]; [images addObject:container]; } }
在我的其他数组Array 2
,我从应用程序加载他们。
self.images = [NSMutableArray arrayWithObjects: @"01.jpg",@"02.jpg",@"03.jpg",@"04.jpg",@"05.jpg",@"06.jpg",@"07.jpg",nil];
我能够像这样向Array 2
添加string:
for (int x=1; x<8;x++) { // add as NSString [images addObject:[NSString stringWithFormat:@"%d", x]]; }
而且能够像这样比较Array 2
:
NSInteger index = carousel.currentItemIndex; if ([[images objectAtIndex:index] intValue] == 1){
我想做的,就是做Array 1
。 我知道Array 1
已经添加了NSNumber
,但我有点新的NSMutableDictionary
所以我不能这样做与Array 2
相同。
它可以做我的Array 2
相同或者是另一种方式?
谢谢您的帮助。
其实在这里你有字典arrays,因为你正在添加具有两个对象的字典,其中具有关键字image
和index
所以,为了检索字典数组,
只要logging下来,看看会发生什么
编辑2.0
for(int i=0; i< [images count]; i++){ NSNumber *num =[[images objectAtIndex:i] objectForKey:@"index"]; int index = [num intValue]; NSLog(@"%d",index) }