61

とてもシンプルな三目並べゲームを作り始めました。主な目標は、ビューをすべての iOS デバイスのすべての画面サイズに比例させることです。そのため、画像を に配置し、ViewControllerフルサイズの画面にしてから、スタック ビューに配置します。この Stack View 0 のすべての側面に制約を追加しました。そして、シミュレーターを実行すると、すべてがうまくいくように見えます。しかし、コンソール パネルにメッセージが表示されます。どういう意味ですか?

スクリーンショット

4

4 に答える 4

75

上で画層を変更するUIStackViewと、この警告が表示されます。警告が指摘しているように、これはUIStackView変換のみのレイヤーであり、UIView. ドキュメントに従って:

UIStackView は、UIView の非レンダリング サブクラスです。つまり、独自のユーザー インターフェイスは提供されません。代わりに、配置されたビューの位置とサイズを管理するだけです。その結果、一部のプロパティ (backgroundColor など) はスタック ビューに影響しません。同様に、layerClass、drawRect:、または drawLayer:inContext: をオーバーライドすることはできません。

詳細はこちら

OPの問題の正確な原因を指していない可能性がありますが、うまくいけば、UIStackView動作が同じではなく、UIView.

于 2016-05-25T21:12:48.087 に答える
2

あなたがしたことは完全に正しいようです。

ただし、スタックビューなしで側面を簡単に固定できたのに、なぜイメージビューをスタックビューに入れることを選択したのか疑問に思っています。私はスタックビューの大ファンですが、どこでも意味があるわけではありません。新しいビューを追加したり、ticktactoe ボードのサイズを変更したりする予定がない限り、私はそれを使用しないかもしれません。

于 2015-10-30T17:16:13.603 に答える