使用集合视图时声明目录
Posted
技术标签:
【中文标题】使用集合视图时声明目录【英文标题】:declaring directory when using collection View 【发布时间】:2013-08-15 17:21:46 【问题描述】:我不知道如何在 .h 文件中声明您的目录。在我的视图控制器中我写了
- (void)viewDidLoad
[super viewDidLoad];
// Do any additional setup after loading the view.
NSArray *allImagesArray = [[NSArray alloc ]init];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *location=@"Hats";
NSString *fPath = [documentsDirectory stringByAppendingPathComponent:location];
NSArray *directoryContent = [[NSFileManager defaultManager] directoryContentsAtPath: fPath];
for(NSString *str in directoryContent)
NSString *finalFilePath = [fPath stringByAppendingPathComponent:str];
NSData *data = [NSData dataWithContentsOfFile:finalFilePath];
if(data)
UIImage *image = [UIImage imageWithData:data];
[allImagesArray addObject:image];
当然,我得到一个错误,说“NSMutableArray”的接口不可见声明选择器“addObject”。我不知道如何在 .h 文件中声明名为 Hats 的目录。我认为您使用 NSMutableArray 或其他东西,但我不确定..
【问题讨论】:
【参考方案1】:您想使用 NSMutableArray 而不是 NSArray。创建后不能更改 NSArray。
【讨论】:
好的然后你能告诉我如何在 NSMutabelArray 中声明它,因为我正在努力处理声明位。我认为我不需要更改实现文件中的任何内容? 在这种情况下,您只需将NSArray *allImagesArray = [[NSArray alloc ]init];
更改为 NSMutableArray *allImagesArray = [[NSMutableArray alloc ]init];
声明要写什么?
NSMutableArray *allImagesArray = [[NSMutableArray alloc ]init];
但是我在声明列表的末尾收到了一个错误提示“预期”,它指向 = 符号【参考方案2】:
NSMutableArray *allImagesArray = [[NSMutableArray alloc ]init];
然后你就可以了
[allImagesArray addObject:image];
NSArray 初始化时需要填充。因此,如果你想将一些对象添加到数组中,那么你必须使用 NSMutableArray。
【讨论】:
好的,我在声明列表的末尾收到一个错误提示“预期”,它指向 = 符号 这通常发生在空格出现问题时(当您复制粘贴代码时)。重新键入它,确保其适当间隔。或转到Editor
菜单,选择Show Invisibles
。它会显示那些空字符。
即使我使用了 show Invisible,我也看不到无用的间距。以上是关于使用集合视图时声明目录的主要内容,如果未能解决你的问题,请参考以下文章