Я реализую контроллер с раздельным просмотром программно для iPad. Это код, я использую в didFinishLaunching:SplitView - iPad
self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
MasterViewController *masterViewController = [[MasterViewController alloc] init];
UINavigationController *masterNavigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];
DetailedNewsViewController *detailViewController = [[DetailedNewsViewController alloc] init];
UINavigationController *detailNavigationController = [[UINavigationController alloc] initWithRootViewController:detailViewController];
masterViewController.detailViewController = detailViewController;
self.splitViewController = [[UISplitViewController alloc] init];
self.splitViewController.delegate = detailViewController;
self.splitViewController.viewControllers = @[masterNavigationController, detailNavigationController];
self.window.rootViewController = self.splitViewController;
[self.window makeKeyAndVisible];
, но когда я запускаю этот код. МастерView показывает правильно, это TableViewController. Но DetailView не показывает, его просто черный экран, я попытался написать переменные, используемые в программном обеспечении DetailView, и добавить их в вид &, с которым он работал.
Почему для MasterViewController она принимает его непосредственно из раскадровки, тогда как для DetailViewController я должен кодироваться вручную?, И это действительно сложно сделать это вручную, я уже сделал все, что в раскадровке
Thank вы.
Это лишь вопрос стиля в кодировании. Но я все еще получаю черный экран для DetailViewController –
wats необходимость в masterViewController.detailViewController = detailViewController; и self.splitViewController.delegate = detailViewController ;? –
masterViewController.detailViewController = detailViewController; используется для отправки сообщения в detailViewController, чтобы он мог отображать информацию. & self.splitViewController.delegate = detailViewController; используется для получения обновлений, когда MasterView покажет или скроет (делегирование) –