アンカーを設定したビューの高さに現在アクセスしようとしています。したがって、たとえば、私は自分のViewControllerに次のように使用して、左、右、上、およびsearchTable
の下部にアンカーを設定します。アンカーを設定した場合、ビューの高さを取得する方法
searchTable.topAnchor.constraint(equalTo: view.topAnchor).isActive = true
searchTable.leftAnchor.constraint(equalTo: view.leftAnchor).isActive = true
searchTable.widthAnchor.constraint(equalTo: view.widthAnchor).isActive = true
searchTable.bottomAnchor.constraint(equalTo: menuBar.topAnchor).isActive = true
searchTable
は、私はそれはUIViewのを継承しUIImageViewを持って作成されたクラスのオブジェクトでありますその中に。私は、init関数で次のように使用してUIImageViewを制約:
imageView.topAnchor.constraint(equalTo: topContainer.topAnchor, constant: 10).isActive = true
imageView.leftAnchor.constraint(equalTo: topContainer.leftAnchor, constant: 10).isActive = true
imageView.heightAnchor.constraint(equalTo: self.heightAnchor, multiplier: topContainerMultiplier * imageProfileMultiplier).isActive = true
imageView.widthAnchor.constraint(equalTo: self.heightAnchor, multiplier: topContainerMultiplier * imageProfileMultiplier).isActive = true
:searchTable
のinit関数の内部では、私は半分に角の半径を設定することができるようにしたいしようと
let topContainerMultipler: Double = 1/7
let imageProfileMultipler: Double = 1/5
画像サイズ私はself.frame.height
、self.frame.size.height
、self.bounds.height
ともself.heightAnchor
制約の.constant
値を取得を使用しようとしましたが、すべて0を返します。
私はこれを回避するための解決策があると思うだろうが、私がすることができていませんそれを見つける。
view1.frame.boundsはどうですか?そして、あなたは、ビューが再ロードされたときにフレームをすぐに印刷しようとしていますか?あなたが高さを取得しようとしているときに表示するいくつかのコードを入れてください – Woof