在我从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
这样添加字符串:
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
一样做,还是用另一种方式做什么?
感谢您的帮助。
答案 0 :(得分:3)
实际上这里有字典数组,因为你要添加的字典有两个带有键image
和index
的对象
因此,要检索字典数组,
只需记录下来,看看会发生什么
编辑2.0
for(int i=0; i< [images count]; i++){
NSNumber *num =[[images objectAtIndex:i] objectForKey:@"index"];
int index = [num intValue];
NSLog(@"%d",index)
}