やや熟練した iOS 開発者である私は、Cocoa でデスクトップ OSX プロジェクトに取り組み始めたばかりで、把握できない問題に直面しています。したがって、この質問は OSX 開発者向けです。
私は Interface Builder があまり好きではないので、ビューをコードで記述する傾向があります。私がビュー レイアウト コードを記述する最も顕著な方法はビュー コントローラーのloadView
メソッドであり、少なくとも iOSではすべてに sを使用autoresizingMask
します。小さい、大きい、回転した横向きと縦向きのビューを試してみて、すべてが適切であれば、リストの次の項目に進みます。デスクトップでは、autoresizingMask
動作 (または外観) が少し異なります。まず第一に、プロパティにはさまざまな名前がありますが、それらの動作も奇妙または予期しないように見えます。
以下の問題に遭遇したとき、コードが間違っているに違いないと思ったので、十分に長く試した後、確認のためにInterface Builderで再作成しましたが、まったく同じ結果が得られました. 垂直に積み重ねられた 4 つのサブビューを含むビューを取得します。真ん中の 2 つの高さを柔軟に設定し、外側の 2 つを固定します。実行してサイズを小さくし、再度元に戻すと、サイズ変更の前後で 2 つの完全に異なるレイアウトが得られます。画像を参照してください:
これで、実行ループ間で数学的な観点からこれが発生する理由を理解できますが、「自動サイズ変更」または「自動サイズ変更」機能の観点からは、これはまったく意味がありません。
すべてのサイズ変更の母となるトピックをここに書き込もうとする前に、これらの質問をしてもよろしいですか? 投稿に追加されると思われる場合は、サイズ変更のトピックについてさらに詳しく説明してください.
- デスクトップ プロジェクトで Interface Builder を使用したくないのはばかですか?
autoresizingMask
iOS プロジェクトよりも少ないものに依存する必要がありますか?- Interface Builder を使用せずに、レイアウトが標準に準拠していることを確認するための適切な代替手段は何ですか?
乾杯!