自定义视图 - uiview的子类无法调整大小

时间:2017-01-09 01:03:59

标签: ios swift

这一定是一件简单的事情,但我无法找到线索,

我正在使用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)

1 个答案:

答案 0 :(得分:1)

我从上述信息中猜测,您可能正在使用UIImageView的框架来设置UIView的框架。您需要将UIView的大小设置为UIImage的大小。

  • imgImageView.image.size

然后将UIView的中心设置为UIImageView的中心。 希望这会奏效。