gpt4 book ai didi

ios - 如何将按钮中的图像添加到表格而不加载缓慢

转载 作者:行者123 更新时间:2023-11-29 04:34:07 25 4
gpt4 key购买 nike

我有两种向表格添加图像的方法,哪种方法最有效,有更好的方法吗?两种方式都放置在带有“图层对象”的按钮顶部。

我注意到表格在模拟器中滚动缓慢,这种缓慢滚动可能会发生在真正的手机上吗?我明白原因的唯一原因可能是因为我没有关联按钮,但它可能是与内存或每个单元格中的绘图相关的其他内容。我不能,因为图像来自 URL,对吗?

以下是将每个按钮添加到表格单元格的两种方法:

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];

[button setTitle:@"image.png" forState:UIControlStateNormal];

[[button titleLabel] setFont:[UIFont fontWithName:@"Helvetica-Bold" size:13]];

[button setTitleColor:[UIColor clearColor] forState:UIControlStateNormal];

[button setBackgroundColor:[UIColor blackColor]];

UIImage *btn = [UIImage imageWithData:"png image from url"];

UIImage* newImage2 = [btn scaleToSize:CGSizeMake(280, 209.0)];

CGSize newSize = CGSizeMake(280, 209.0);

UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);

[newImage2 drawInRect:CGRectMake(0, 0, (newSize.width), (newSize.height))];

UIImage *newImage4 = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

[button setImage:newImage4 forState:UIControlStateNormal];

button.frame = CGRectMake(20.0, 50.0, 280, 255.0);

//////////////////////////////////////////下面第二种方法:

UIButton *button2 = [UIButton buttonWithType:UIButtonTypeCustom];

[button2 setTitle:@"photo.png" forState:UIControlStateNormal];

[[button2 titleLabel] setFont:[UIFont fontWithName:@"Helvetica-Bold" size:13]];

[button2 setTitleColor:[UIColor clearColor] forState:UIControlStateNormal];

[button2 setBackgroundColor:[UIColor blackColor]];

UIImage *btnImage = [UIImage imageWithData:"png image from url"];

UIImageView *imageView2 = [[UIImageView alloc] initWithImage:btnImage];

imageView2.frame = CGRectMake(0, 0, 280, 209);

button2.frame = CGRectMake(20.0, 50.0, 280, 255.0);

[button2 addSubview:imageView2];

最佳答案

这里您的一些图像来自远程服务器。您应该使用 lazy loading从远程服务器加载图像。它将异步下载图像并根据需要加载图像。您还可以使用SDWebImage这样做的库也有缓存机制。使用这个库非常简单和直接。像:

 [cell.imageView sd_setImageWithURL:[NSURL URLWithString:@"http://www.domain.com/path/to/image.jpg"]
placeholderImage:[UIImage imageNamed:@"placeholder.png"]];

关于ios - 如何将按钮中的图像添加到表格而不加载缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11284049/

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