XCode: MasterDetailsView - DetailsView без разделения экрана в альбомной ориентации?
На самом деле я совершенно новичок в Xcode и не могу найти ответ на следующие два вопроса с помощью поиска Google:
Короче говоря: я работаю над приложением для iPad, которое отображает предложения. Для этого вы должны выбрать предложение из таблицы в MasterView, а затем просмотреть детали в DetailsView в альбомном режиме (но без MasterView на Spitscreen). Поэтому, когда приложение запускается в ландшафтном режиме, я хочу сразу увидеть первое полноэкранное предложение в DetailsView. И когда я нажимаю на экран, MasterView должен всплыть / показать другие предложения в таблице. Это возможно?
Я хочу отображать PDF-файлы в WebView, как в iBooks. Это означает, что панель навигации скрыта, и только когда я нажимаю на экран, панель навигации должна появляться в верхней части экрана.
Я вроде уверен, что эти вопросы где-то были решены, но я ничего не смог найти с помощью поиска, поэтому я надеюсь, что вы все равно сможете мне помочь:-)
Заранее спасибо!
1 ответ
Q1: Использование может использовать один из многих методов для представления представления (посмотрите под документом Apple на UIViewController под заголовком "Представление содержимого другого представления контроллера"). Два, которые я использовал: – presentModalViewController:animated:
а также – presentViewController:animated:completion:
(последнее является последним дополнением в iOS 5.0)
Допустим, у вас есть детальный контроллер под названием MyDetailViewController
в файле реализации вашего Master View Controller (файл.m), под viewDidLoad
метод, вы бы сделали что-то вроде этого, чтобы представить его в полноэкранном режиме.
MyDetailViewController *myDetailViewController = [[MyDetailViewController alloc] initWithNibName:@"MyDetailViewController" bundle:nil];
[myDetailViewController.view setFrame:CGRectMake(0, 0, 1024, 768)]; //might not need this
[self presentViewController:newDetailViewController animated:YES completion:^{
NSLog(@"complete"); //optional
} ];
Чтобы отклонить или скрыть это MyDetailViewController
одним касанием или касанием вы можете использовать метод UITapGestureRecognizer или touchesEnded и один из методов dismiss (для этого снова обратитесь к UIViewController от Apple).
Q2: я лично не использовал UIWebView для отображения PDF и не уверен, что iBooks использует UIWebview для этого. Но для отображения множества популярных форматов документов вы можете использовать либо класс QLPreviewController, либо UIDocumentInteractionController. Вы можете скрыть панель инструментов во время отображения документа.
Удачи.