gpt4 book ai didi

ios - 在 customCell 中循环 uiimageview

转载 作者:技术小花猫 更新时间:2023-10-29 11:04:35 25 4
gpt4 key购买 nike

你好我有每个产品的产品表和产品详细信息 View 我有很多图像下载并缓存在磁盘和内存上每次用户选择产品以检查其详细信息我正在尝试检索缓存图像并进行设置对于我在 UITableViewController 中自定义单元格内的四个 UIImageView 我无法设置图像,尽管我可以通过 NSLog() 函数记录它们我正在使用这段代码:

    int index = 0;
int indexOfImages = 1;
self.imageCache = [[SDImageCache alloc] initWithNamespace:@"menuImage"];
for ( UIImageView *currentImageView in cell.contentView.subviews)
{
NSLog(@"the imageindex is: %d",indexOfImages);
NSLog(@"the index is: %d",index);
NSLog(@"the count is: %lu",(unsigned long)[self.currentProduct.mirsaProductUrlImage count]);
if (index < [self.currentProduct.mirsaProductUrlImage count] ) {
[self.imageCache queryDiskCacheForKey:self.currentProduct.mirsaProductUrlImage[indexOfImages]
done:^(UIImage *image, SDImageCacheType cacheType) {
if (image) {
currentImageView.image = image;
}
}];
indexOfImages++;
index++;
}
else
{
break;
}
}

and if i try to change the loop way to this

 for ( UIImageView *currentImageView in self.tableView.subViews)

i got this error UITableViewWrapperView setImage:]: unrecognized selector sent to instance

我只是想知道我是否以错误的方式循环我的意思是我无法通过这个循环联系到他们或者发生了什么事?

最佳答案

您必须将循环更改为:

 for ( UIView *currentView in cell.contentView.subviews)
{
if([currentView isKindOfClass:[UIImageView class]])
{
// here Do All the stuff for imageViews
}
}

cellForRowAtIndexPath 中做所有这些事情并更改 imageView 图像采用 imageView 的弱实例,如下所示:

__weak UIImageView *weakImage = currentImageView;
[self.imageCache queryDiskCacheForKey:self.currentProduct.mirsaProductUrlImage[indexOfImages]
done:^(UIImage *image, SDImageCacheType cacheType) {
if (image) {
weakImage.image = image;
}
}];

关于ios - 在 customCell 中循环 uiimageview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43726524/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com