我想在UITableViewCell中自定义圆角图像。但是,我无法在故事板中获得正确的图像宽度。为什么呢?
// Range expanding for min
double.MaxValue - random.NextDouble() * (double.MaxValue - min);
// Range expanding for max
double.MinValue + random.NextDouble() * (max - double.MinValue);
答案 0 :(得分:1)
替换你的陈述
print("\(self.userImageView.frame.width)") // print out 1000.0 !! Same here
与
print("\(self.userImageView.frame.size.width)")
因为frame
是CGRect
public struct CGRect {
public var origin: CGPoint
public var size: CGSize
public init()
public init(origin: CGPoint, size: CGSize)
}
在该结构中CGSize
具有以下结构
public struct CGSize {
public var width: CGFloat
public var height: CGFloat
public init()
public init(width: CGFloat, height: CGFloat)
}
答案 1 :(得分:0)
你也可以试试这个
var imageWidth = userImageView.frame.size.width
这可能会帮助您获得图像宽度。
答案 2 :(得分:0)
将这些代码放入 layoutIfNeeded()
后,一切顺利override func layoutIfNeeded() {
super.layoutIfNeeded()
userImageView.layer.cornerRadius = self.userImageView.frame.width / 2
userImageView.layer.borderWidth = 1
userImageView.layer.borderColor = UIColor.white.cgColor
userImageView.layer.masksToBounds = true
}
答案 3 :(得分:0)
取相同的宽度和高度。写下面后,你会得到精确的圆形图像。 imageView.layer.cornerRadius = imageView.frame.width / 2 imageView.layer.borderWidth = 1 imageView.layer.borderColor = UIColor.grayColor()。CGColor imageView.layer.masksToBounds = true