0
私はSwift 2.2でカスタムコンポーネントを作成しようとしています。私の見解はフレームrectを無視します。その後、ビューは、フレーム四角形を無視し、そして - 私はプログラム的にそれをサブクラス化せずに、UIViewのかUicontrolのを追加した場合でも、実際にはUIView/UIControlはフレームrectを無視します。常にフルスクリーン
let arrowControl = ArrowControl(frame: CGRect(x: 100 , y: 100, width: 300, height: 300))
self.view.addSubview(arrowControl)
:含むビューで
、私はこのようなプログラムでビューを追加します画面全体を占有します。私は私の例を変更し、renderComponentを削除すると、私はまだ同じ問題を取得
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override init(frame: CGRect) {
super.init(frame: frame)
}
override func layoutSubviews() {
super.layoutSubviews()
renderComponent(frame)
}
EDIT >>>>
:ここ
は私のカスタムビューの不可欠な部分です。
override func layoutSubviews() {
super.layoutSubviews()
self.clipsToBounds = true
backgroundColor = UIColor.yellowColor()
// renderComponent(self.frame)
}
たり、次の操作を行って、フレーム四角形を無視し、私の色のフルスクリーンブロックを与える:
let test = UIView(frame: CGRect(x: 100 , y: 100, width: 300, height: 300))
test.backgroundColor = UIColor.redColor()
self.view.addSubview(test)
あなたのrenderComponentメソッドは何をしていますか? clipToboundsプロパティまたはmarkToBoundプロパティをtrueに設定して、それが役立つかどうかを調べることができます。 – Surely
私の例を変更してrenderComponentを削除しても、同じ問題が発生します。上の質問の編集を参照してください。 –