2017-11-22 8 views
1

すべてのUIViewを満たしていませんが、ビューは完全には満たされていませんグラデーションは、私はグラデーションレイヤーを作成し、ビューに挿入したい

This is my result...

私はそれについての手掛かりを持っていない...それは...

フルスクリーンビューではなく、より小さなビューで動作します

トップビューはもちろんストーリーボードからインポートされます。たぶん私はビューでミスを犯した。私は知らない。私は迅速かつiOSの初心者ですので、すべてが可能です!

EDIT: 問題は、これが関係している層

+0

topView.boundsをtopView.frameに変更するとどうなりますか? –

+0

同じ結果 – Psyycker

答えて

3

ビューの背景色は、すべてのスペースを埋めるため、ビューのサイズが、小さすぎる層の大きさではなくありませんあなたのストーリーボードの制約は、サブビューが配置されるまで適用されません。 viewDidLoad()では、ビューのサイズはストーリーボードから固定されています。レイヤのフレームを設定するコードをviewDidLayoutSubviews()に移動すると、制約はtopViewに適用され、正しいフレームが作成されます。レイヤのフレームを設定することができます。

は、それが全体のビューを記入しますあなたのProfileController

override func viewDidLayoutSubviews() { 
    super.viewDidLayoutSubviews() 

    gradientLayer.frame = topView.frame 
} 

にこれを追加します。

関連する問題