9

子ビュー コントローラのビューをカスタムに追加するにはどうすればよいUITableViewCellですか? 内部に次のようなビューを追加できますcellForRowAtIndexPath

self.addChildViewController(controlsViewController)
cell!.cellView.addSubview(controlsViewController.view)
controlsViewController.didMoveToParentViewController(self)

しかし、セルが消えたら、この子ビュー コントローラーを削除する必要があります。どうすればいいのかよくわかりません。これについてもっと良い方法はありますか?

4

2 に答える 2

2

MVC を誤解しないでください。世界中のすべてのビューに独自のビュー コントローラーが必要なわけではありません。メイン ビューにはビュー コントローラーがありますが、そのメイン ビューのボタンには独自のビュー コントローラーがありません。メイン ビューのビュー コントローラーと対話するだけです。

この見方も同じです。ビューは非常に簡単に行き来できます。必要がない場合は、追加のビュー コントローラーの重い負担を追加しないでください。他のビューと同じように、ビューを(何らかの方法で)取得してセルに貼り付けるか、セルcontentViewから削除しますが、テーブルビューコントローラーまたはテーブルビューデータソース/デリゲート、またはここで担当するものを使用して管理します。この小さなビューのためだけに、ビュー コントローラーをストーリーに追加しないでください。これは、View Controller の不適切な使用である可能性があります。contentViewcellForRowAtIndexPath:

于 2015-06-12T22:23:52.633 に答える