我有一个数组。 在我的数组中有8个对象序列:
- text
- text
- link Url Image.
- link Url Image.
- text
- link Url Image.
- link Url Image.
- text
我已下载所有图片并保存到文件夹。 现在,我怎样才能从文档文件夹中获取所有图像并在tableViewCell中显示相同的myArray?
我使用此代码从文档文件夹中获取所有图像。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *myPath = [paths objectAtIndex:0];
NSFileManager *fileManager = [NSFileManager defaultManager];
NSArray *directoryContents = [fileManager contentsOfDirectoryAtPath:myPath error:nil];
NSMutableArray *subpredicates = [NSMutableArray array];
[_arrMessageFree addObject:[NSPredicate predicateWithFormat:@"SELF ENDSWITH '.png'"]];
[_ar addObject:[NSPredicate predicateWithFormat:@"SELF ENDSWITH '.jpg'"]];
NSPredicate *filter = [NSCompoundPredicate orPredicateWithSubpredicates:subpredicates];
NSArray *onlyImages = [directoryContents filteredArrayUsingPredicate:filter];
但是,我无法在myArray中显示文本和图像。
答案 0 :(得分:1)
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
//after cell initialization add following code
for (UIView *subview in [cell.contentView subviews])
{
[subview removeFromSuperview];
}
UIImage *img=[UIImage imageWithContentsOfFile:[onlyImages objectAtIndex:indextPath.row]];
[cell.contentView addSubview:img];
}
答案 1 :(得分:0)
正如您所说,您可以在以下行之后将图像名称转换为onlyImages
数组:
NSArray *onlyImages = [directoryContents filteredArrayUsingPredicate:filter];
所以让我们用它来获取和创建UIImages
:
UIImage *temp = nil;
for (int i = 0; i < [onlyImages count]; i++) {
temp = [UIImage imageNamed:[onlyImages objectAtIndex:i]]; // so now you have your image loaded into `temp` UIImage object
}
希望这有用!
干杯!