0

iOS プロジェクトへの貢献を始めたばかりで、次のパターンが繰り返されることに気付きました。

// This takes place in the superview
// This is the first access of subviewController.view,
// so the subview controller will create its view
// Then we'll immediately resize it to our desired frame
subviewController.view.frame = CGMakeRect(x, y, width, height);

サブビューのコントローラーが特定のフレームサイズでサブビューを作成し、スーパービューのサイズをすぐに変更するのは奇妙/非効率的です。

スーパービューが目的のサイズを最初からサブビューに渡すことができるようにするために、私が見逃している他のデザインパターンはありますか?この即時のサイズ変更は不要ですか?

明らかに、サブビューコントローラーには、サイズをパラメーターとして受け取る特別なメソッドを含めることができますが、これがコーシャ/一般的なパターンであるかどうか疑問に思っています。

4

1 に答える 1

1

サブビューが作成さinitれるときはいつでも、メソッドで作成する代わりに、いつでもで作成できますinitWithFrame。ところで、私たちはコントローラーのメインビューについて話しているのですか?その後、プロジェクトをコンパイルする前に、InterfaceBuilderからいつでもビューサイズを設定できます。

ただし、アプリケーションが起動のたびにサブビューを動的に変更する必要がある場合は、現在の方法が唯一のオプションです。

于 2012-06-23T23:00:46.137 に答える