UITableView
コントローラーをマスターとディテールの両方として持つマスター/ディテール アプリケーションを作成しようとしています。私がする必要があるのは、行が選択されたときに8つのデータ文字列を詳細に渡すことですUITableViewController
。これを達成する最善の方法は何ですか?UITableViewController
動的ではなく、静的なセルとして詳細を表示する予定です。
質問する
1094 次
1 に答える
0
マスター ビュー コントローラーに変数を作成して、詳細ビュー コントローラーにアクセスできます。次に、マスター ビュー コントローラーの viewDidLoad で、この変数を設定して、この時点からself.detailViewController
、マスター ビュー コントローラーでのすべての呼び出しが詳細ビュー コントローラーに送信されるようにします。サンプルコード:
MasterViewController.h で:
@class DetailViewController // do not use include here to avoid reference cycles, just identify DetailViewController as a class
@interface MasterViewController : UITableViewController
// in the interface, declare property to access detail view controller
@property (strong, nonatomic) DetailViewController *detailViewController;
@end
MasterViewController.m で:
#include "DetailViewController.h"
// in the implementation, synthesize
@interface DetailViewController : UITableViewController
@synthesize DetailViewController;
// when the view loads
- (void)viewDidLoad {
// call super method
[super viewDidLoad];
// if you used XCode's built-in Matser/Detail application, this will set detailViewController to the detail view controller
self.detailViewController = (ITLDetailViewController *)[[self.splitViewController.viewControllers lastObject] topViewController];
}
self.detailViewController.someProperty
このように、マスター ビュー コントローラー コードを使用しているときに、またはを呼び出すことができます[self.detailViewController someMethod]
。
于 2012-12-13T04:33:02.927 に答える