我有一个带有笔触的贝塞尔曲线,它包含在框架中。我的贝塞尔曲线与框架一起很好地动态调整大小,但是笔触宽度是静态的,这使得它在小尺寸下看起来很糟糕。 (请注意,下面的小星星上的笔画不成比例。)
我的第一个想法是使笔触宽度(通常为5)成为基于5.0*(frame.width/standardwidth)
之类的表达式,但是我不允许引用frame变量。
如何使表达式基于框架宽度来计算笔划宽度?还是以某种方式使笔触宽度动态调整大小,使其像框架中的其他元素一样?
答案 0 :(得分:1)
对我来说,这是开箱即用的。那就是:
“ ...以某种方式使笔触宽度动态调整大小,使其与框架中其余元素的大小相同。
版本:
PaintCode设置
自定义视图
import Foundation
import UIKit
@IBDesignable class StarView: UIView {
override func draw(_ rect: CGRect) {
StyleKit.drawStarIcon(frame: rect)
}
}
最终结果
GitHub