2017-09-24 19 views
0

非常に奇妙な動作のため、Xcode 9で簡単なmacSOアプリケーションを作成できません。私は、異なる背景色を描くためのシンプルなレイヤーで2つのビューを持っています。このように: enter image description here 私は何かを変更せずに、(通常)3番目の行を実行した後に、アプリケーションを実行すると、ビューが消える...文字通り。そして、ウィンドウは次のようになります。ここでは enter image description here テストプロジェクトです:さらにXcode 9が異常な動作をしてコンパイルされたアプリケーション

https://github.com/ivailon/test13

- 私はすでに再びビューが時々消え、アプリをビルド実行を開始します。なぜこれが起こっている誰もが、問題は、すべての時間がビューの層がの呼び出し前に初期化されていないということです...でも

+0

「停止」ボタンを押して再び「実行」を押すと、アプリは前回の起動時と同じに見えませんか? –

+0

まさに...サンプルで試してみてください...すでにコンパイルされたアプリに行っても、アプリが同じように見える毎回ではありません... –

答えて

0

を合理的な説明の手がかりを与えることができます:

FUNCのviewDidLoad()

説明
ビューコントローラのビューがメモリにロードされた後に呼び出されます。

let layer = CALayer() 
layer.backgroundColor = NSColor.orange.cgColor 
view1.layer = layer 
view1.wantsLayer = true 

プロジェクトは違いを示すために、GitHubに更新されました。これを解決するには

はこのように、それとの見解を後で層を初期化したり、独自のCALayerオブジェクトとセットアップを作成する必要があります。

関連する問題