メインの NSWindow には、あるサイズ範囲に制限された UI が含まれています。そうしないと、破損する可能性があります。を使用してウィンドウをサイズ範囲に制限します
[myWindow setContentsMaxSize:maxSize] [myWindow setContentsMinSize:minSize]
これは、ユーザーがエッジまたはサイズボックスをドラッグする場合にうまく機能します。
ユーザーが「フルスクリーン」ボタンを押すと、Lion はアニメーションを開始します。
- ウィンドウを現在のサイズより小さくし、
- いくつかのステップで、全画面表示サイズに達するまでサイズを大きくします。
ウィンドウが最小サイズで開始された場合、このアニメーションは定義された最小サイズよりも小さくなり、修復できないほど UI が破損します (ユーザーはアプリを再起動する必要があります)。ビューがサポートされていないサイズの setFrameSize: を受け取ります。
私の質問
- これは Cocoa のバグと見なすことができますか?
- ビュー階層で何か間違ったことをしていますか?
- フルスクリーンのOS標準アニメーションを置き換えずに、どうにかして破損を防ぐことはできますか?
アニメーション全体でビュー階層全体をライブでサイズ変更するのではなく、ウィンドウ コンテンツの「スナップショット」に基づいた標準アニメーションを使用しないのはなぜですか? これは確かに効率的ではありません。- 私にとって非破壊的な別の標準遷移を適用する簡単な方法はありますか?
- 誰かが、最小値を下回らない単純な線形サイズ変更アニメーションを実行する数行のコードを「割く」ことができますか?
ありがとう。!