这一定是一件简单的事情,但我无法找到线索,
我正在使用imageview并尝试一个涂鸦视图,它是UIview的子类,允许涂鸦。所有工作都很好,除了调整涂鸦视图的大小,它总是占据整个屏幕,我无法让它变小。
class ScribbleView: UIView
{
let backgroundLayer1 = CAShapeLayer()
required init()
{
// super.init(frame: CGRect.zero)
super.init(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
layer.addSublayer(backgroundLayer1)
layer.masksToBounds = true
}
class HermiteScribbleView: ScribbleView, Scribblable
{
required init() {
print ("calling parent")
super.init()
}
}
/ **主要代码** /
let hermiteScribbleView = HermiteScribbleView()
hermiteScribbleView.backgroundColor = .red
// imgView.autoresizesSubviews = true
// hermiteScribbleView.autoresizingMask = [.flexibleHeight, .flexibleWidth]
//once this is done, hermieScribbleView is always stretched to full width and height no matter what I try
imgView.addSubview(hermiteScribbleView)
答案 0 :(得分:1)
我从上述信息中猜测,您可能正在使用UIImageView
的框架来设置UIView
的框架。您需要将UIView
的大小设置为UIImage
的大小。
imgImageView.image.size
然后将UIView
的中心设置为UIImageView
的中心。
希望这会奏效。