Я хочу создать модальный вид с элементом навигации (правый вид на моем снимке экрана), и я хочу, чтобы у него была кнопка «назад». Мое приложение - приложение TabBar, и я не хочу, чтобы в этом представлении была панель вкладок, но я хочу загрузить предыдущее представление (левое изображение на моем скриншоте) с шагом, подобным типу «push». Я могу создать только push segue, чтобы обеспечить правильную навигацию обратно к виду слева, если он загружен как модальный вид, TabBar NavigationBar & исчез. Какие-нибудь обходные пути для этого? Спасибо заранее!Создайте модальный вид с навигационной панелью и кнопкой назад
ответ
Просто поместите Navbar в новый вид с помощью элемента кнопки. Создайте действие для элемента кнопки панели, перетаскивая элемент управления из элемента кнопки панели в .h контроллера вида. Затем вы можете использовать делегат и протокол метода сказать первый контроллер, когда кнопка была нажата и он использовать [self dismissModalViewControllerAnimated:YES];
Так что в вашем втором зрения создать протокол с методом сделано, как это:
@protocol SecondViewControllerDelegate <NSObject>
-(void) done;
@end
@interface SecondViewController : UIViewController {
...
id delegate;
}
...
@property (nonatomic, assign) id<SecondViewControllerDelegate> delegate;
-(IBAction)done:(id)sender; //this will be linked to your nav bar button.
@end
затем в ваше действие из вашей кнопки называем это:
-(IBAction)done:(id)sender{
[self.delegate done];
}
Ваш первый вид контроллера необходимо для реализации протокола <SecondViewControllerDelegate>
, то в своем первом контроллере просмотра установите его в качестве делегата для вашего второго контроллера представления перед тем, как вы перейдете.
-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if([[segue identifier] isEqualToString:@"Second View Modal Segue Identifier"])
{
SecondViewController *viewController = segue.destinationViewController;
viewController.delegate = self;
}
}
наконец, поймать сделал звонок от делегата в первом контроллере представления:
-(void) done
{
[self dismissModalViewControllerAnimated:YES];
}
Вот как я это сделал. Если у вас нет большого опыта работы с протоколами и делегатами, это может показаться сбивающим с толку вначале, но это сработало хорошо для меня.
извините, если есть какие-либо опечатки, я набрал все это с нуля только сейчас. –
Вам нужно будет обернуть правый контроллер представления стороны в новом навигационном контроллере. В IB выберите его и выберите пункт меню Editor -> Embed In -> Navigation Controller
, а IB отобразит навигационную панель, которую вы можете настроить для вашего сердца.
Будет ли это предлагать это как модальное представление? –
Да, действительно. На iPad у вас может быть меньше централизованного представления. Вы должны реализовать свои собственные кнопки в навигационной панели для отклонения. – Mundi
Спасибо. В iOS 7, если я просто перетащил навигационную панель, это будет выглядеть плохо, поскольку фон «временной шкалы», в отличие от навигационной панели, не имеет серого фона. Но этот метод решил проблему и кажется более элегантным. –
- 1. Флип-вид в iphone с навигационной панелью
- 2. Создайте пользовательский модальный вид
- 3. iOS - кнопка управления навигационной панелью
- 4. UISegmentedControl в навигационной панели с кнопкой «Назад»
- 5. Возникли проблемы с комбинированными панелью вкладок и навигационной панелью контроллерами
- 6. Модальный вид отображается в полноэкранном режиме, как и должно быть, но за навигационной панелью
- 7. Проблема с навигационной панелью в sencha touch
- 8. Программно создайте навигационный контроллер с кнопкой «назад»
- 9. Проблема с навигационной панелью
- 10. FloatingActionButton с закусочной и прозрачной навигационной панелью
- 11. добавление значка между кнопкой «Назад» и заголовком навигационной панели
- 12. Проблемы с навигационной панелью в SDK 4.2
- 13. iOS - Навигационная панель - Вид внутри стола с другой навигационной панелью
- 14. Проблема с навигационной панелью iphone 4.3
- 15. Пустое пространство между навигационной панелью и видом
- 16. Блестящее приложение с навигационной панелью и другой боковой панелью
- 17. Кнопка управления навигационной панелью iPhone?
- 18. Контроллер поиска с навигационной панелью
- 19. Swift - UITableViewController с навигационной панелью
- 20. Выравнивание логотипа с навигационной панелью
- 21. Простые и плавающие проблемы с навигационной панелью
- 22. как бороться с навигационной панелью?
- 23. С моей навигационной панелью перепутано
- 24. Проблемы с навигационной панелью HTML
- 25. Выравнивание h1 с навигационной панелью
- 26. Проблемы с горизонтальной навигационной панелью
- 27. Удалить место над навигационной панелью
- 28. Проблемы с настраиваемой навигационной панелью
- 29. Проблемы с навигационной панелью UWP
- 30. Проблема с навигационной панелью CSS
Что не так с представлением модального вида (справа) и с кнопкой назад, чтобы отменить его, чтобы вернуться к UITableView, который показан слева? – tarheel
Потому что это UIWebView с динамическим контентом, и я хочу, чтобы кнопка возврата была на панели навигации. –