プロジェクトに取り組んでいます。ここには、ドロップを受け入れるビューがある既存のウィンドウがあります。しかし、ドロップが完了したら、テーブルビューを追加して、テーブルビューに合わせてウィンドウのサイズを大きくする必要があります。古いappzapperアプリがその一例になります。cocoa - 既存のウィンドウにビューを追加してサイズを変更する
私はこれを前にやっていないし、誰かが私がこれをやる方法や偉大なチュートリアルの正しい方向で私を指摘することができます。
プロジェクトに取り組んでいます。ここには、ドロップを受け入れるビューがある既存のウィンドウがあります。しかし、ドロップが完了したら、テーブルビューを追加して、テーブルビューに合わせてウィンドウのサイズを大きくする必要があります。古いappzapperアプリがその一例になります。cocoa - 既存のウィンドウにビューを追加してサイズを変更する
私はこれを前にやっていないし、誰かが私がこれをやる方法や偉大なチュートリアルの正しい方向で私を指摘することができます。
それを行うには多くの方法が、それらはすべてこれに煮詰める:
removeFromSuperview
を呼びたいなら、それ (addSubview:
)を追加するために新しいビューを追加するビューを教えてください。
Re:1 - 好きなように、ペン先やコードで表示することができます。
あなたのコーディングスタイルに応じて、ニブの元のデザインにサブビューの権利を追加し、それをawakeFromNib
で削除し、コントローラへの参照を保持しておくと便利です。元のビューのサイズを変更します。
レイアウトストラットが正しく設定されていることを確認し、UIの他の部分を独自のビューで折り返して、サイズ変更時に予期せず移動しないようにすることができます。
このアプローチでは、サブビューをもう一度追加すると、大きなビューを元のサイズに戻します(awakeFromNib
の間にコントローラに読み込んで保存することができます)。それは既に正しいフレームを持っていて、Interface Builderで作成したペン先(またはそれに相当するXcode)に置きます。
ありがとうございます。私がこれを試してみましょう、私はあなたが私のやり方を知らせるでしょう: – rick
ええ、私はそれを持っていると思います。私はフェーディング/アニメーションを実験していますが、一般的な考えは私に非常に感謝してくれました。私は尋ねることができると思いますが、あなたが説明した方法でサブビューを追加するのではなく、ウィンドウにsetContentView:を呼び出す人がいます。どちらの方法も罰金か、それとも賛否両論ですか?再度、感謝します! – rick
私の答えに記載されているアプローチについては、いくつかの異なる要素がUI内に存在する必要があります。できればビューでグループ化されます。つまり、これらのビューがウィンドウのcontentViewのすべてのサブビューである場合です。 contentView全体を設定することは、たとえば、環境設定パネルのように、ウィンドウ全体の新しいコンテンツを入れ替えると意味があります。 – Monolo