gpt4 book ai didi

ios - UITableViewCell 圆形 imageView

转载 作者:行者123 更新时间:2023-11-29 12:55:11 26 4
gpt4 key购买 nike

我正在尝试制作一个在圆形 imageView 中包含图像但具有不同大小的图像的应用程序。我的目标是在图像太大时显示一小部分图像(因此图像看起来不会失真)。

我可以得到圆形的 imageView,但是对于不同的图像它总是有不同的大小——这不是我想要的。我在这里阅读了帖子:

UIImage with rounded corners

Using cornerRadius on a UIImageView in a UITableViewCell

我的一些代码用于 UITableViewCell(我对其进行子类化):

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
// Initialization code
// [self.imageView setContentMode:UIViewContentModeScaleAspectFill];

self.imageView.contentMode = UIViewContentModeScaleAspectFit;
self.imageView.bounds = CGRectMake(0, 0, 44,44);
self.imageView.frame = CGRectMake(5, 10, 44, 44);

CGRect frame = self.imageView.frame;
self.imageView.layer.cornerRadius = 15;
[self.imageView.layer setMasksToBounds:YES];
self.imageView.clipsToBounds = YES;
}
return self;
}

我正在使用 SDWebImage 加载图像。我还缺少其他什么吗?

最佳答案

如果您使圆角半径与宽度或高度等成比例,那么这将为您提供恒定的图像圆度。作为示例,我在这里建议使用 3 的 div。

self.imageview.layer.cornerRadius = self.imageview.frame.size.width/3;

希望这就是您要找的。

干杯,吉姆

编辑 -

我看到您注释掉了 aspectFill,尽管这与 clipToBounds 或 MaskToBounds 应该提供您正在寻找的内容。所以通过改变

self.imageView.contentMode = UIViewContentModeScaleAspectFit;

改为

self.imageView.contentMode = UIViewContentModeScaleAspectFill;

并保留 self.image.clipToBounds 行,这应该是它。

干杯

关于ios - UITableViewCell 圆形 imageView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21358200/

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