Я работаю над проектом iOS с xcode 5. Мне нужно было отобразить таблицу опций во всплывающем окне, поэтому я использовал представление контейнера и назвал его всплывающим через segue , Теперь проблема в том, что я хочу закрыть (а не просто исчезнуть) представление контейнера, как только я выберу строку внутри него. Пожалуйста, помогите мне, как этого достичь. Спасибо заранее.Как закрыть вид контейнера
ответ
Наконец-то я нашел решение, это не выполнимое решение, но спасло меня от внесения серьезных изменений в мой проект. То, что я сделал это -
Я использовал разматывание SEGUE передать обратно значение от дочернего всплывающего контейнера к главному controller.For этого я представил два метода первых один был: prepareForSegue метода с точки зрения контейнера контроллер-
-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if([[segue identifier] isEqualToString:@"CommentOptionToComments"])
{
APMCommentsViewController *objCommentController=(APMCommentsViewController *)segue.destinationViewController;
for(APMOption *obj in self.optionList)
{
if(obj.IsAnswer)
{
NSString *dataToPassBack=[NSString stringWithFormat:@"%d",obj.Number];
self.passBackToParent=dataToPassBack;
}
}
NSLog(@"Return to parent");
}
}
еще один был метод unwindSegue в ParentViewController -
-(IBAction)unwindToList:(UIStoryboardSegue *)segue
{
//get the value from the segue and use it as per your requirement
APMCommentsOptionViewController *source=[segue sourceViewController];
self.lblHiddenResponse.text=source.passBackToParent;
}
, но не забудьте объявить разматывания SEGUE в файле ParentViewController.h.
Теперь то, что я подключен мой прототип ячейка для размотки Segue в раскадровке и дал unwindsegue имя идентификатора (присутствует в сервисной области)
Но проблема заключалась в том, что разматывает переход был вызван перед didSelectRowAtIndexPath было вызванный в результате, хотя всплывающее окно могло закрыть его, но не могло отправить желаемое значение в ParentViewController. Для этого я это я просто назвал prepareForSegue снова в методе didSelectRowAtIndexPath, с синтаксисом, такие как -
[self performSegueWithIdentifier:@"CommentOptionToComments" sender:self];
Как я сказал, его не допустимое решение, но это, наконец, решить мою проблему, но это было бы проще, если бы Я бы использовал UIPopOverController.
Использование всплывающего окна вместо UIAlertView является рекомендуемым подходом. Но если требование требует использования всплывающего окна, вы можете просто показать/скрыть представление контроллера контейнера!
hi @thatzprem Я не просто хочу скрыть или показать представление контейнера. Я хочу закончить его и вернуть элемент управления обратно в супервизор. – User6391
Контейнерный вид - это не что иное, как контроллер представления снова Как насчет того, чтобы вы представили его модельно и отклонили контроллер представления модели. – thatzprem
не могли бы вы уточнить, вы просите меня закрыть вид контейнера – User6391
- 1. Как закрыть вид - Xcode
- 2. Как перемещать вид изнутри контейнера в другой вид контейнера?
- 3. Как автоматически закрыть вид затмения?
- 4. Как закрыть вид в Kdevelop?
- 5. Как закрыть родительское окно из окна контейнера
- 6. быстры показывая скрытый вид контейнера
- 7. Привести вид контейнера на передней
- 8. Получение ссылки на вид контейнера
- 9. Встраивание вид контейнера в UIScrollView
- 10. Вид контейнера - нет выхода Возможна
- 11. IOS вид контейнера: как установить делегат
- 12. MPMoviePlayerControllers вид внутри контейнера UIView
- 13. iOS вид контейнера в android
- 14. Просмотр контейнера неправильно загружает вид
- 15. Посмотреть полностью закрыть другой вид
- 16. закрыть вид в eclipse rcp
- 17. Закрыть 2 вид контроллеры сразу
- 18. Как закрыть ZXing QrCode пользовательский вид
- 19. программно закрыть вид на улицу
- 20. Закрыть вид, который содержит РЕГИОНЫ
- 21. Сделайте вид контейнера viewController больше размера контейнера. Возможное?
- 22. Как я могу отклонить представление контейнера из представления контейнера self
- 23. Вид контейнера и вид прокрутки представляют представление, которое смещено
- 24. Ios swift вид контейнера и сегментированный вид переключателя управления
- 25. Угловой ui-router: вид контейнера и вид по умолчанию
- 26. Выбор не работает. Вид коллекции, встроенный в вид контейнера.
- 27. Вид прокрутки iOS, вид контейнера - вопрос авто макета
- 28. Используя вид контейнера в качестве панели управления
- 29. Вид родительского контейнера доступа из пользовательского класса
- 30. доступа вид контейнера ребенок свойство стремительных
Можете ли вы разместить код? Чтобы закрыть окно контейнера, вы просто не удаляете его из супервизора? Как '[containerView removeFromSuperview]' – rfj001
@ rfj001, какой код кода ожидает от меня? позвольте мне объяснить вам подробно: [Пожалуйста, исправьте меня, если я ошибаюсь] Я использую метод делегата, чтобы получить значение из представления контейнера в основное представление. Я отлаживал и выяснял, что реализация делегат вызывается в то время, когда основное представление вот-вот закончится, что дало мне интуицию, что, если я смогу закончить контейнерный просмотр, то при простом касании он будет вызываться в ожидаемое время. И я также смог бы закрыть всплывающее окно (это одно из моих требований. – User6391
Я не использую xib-файл, поэтому, если вы можете дать мне знать, что такое синтаксис для добавления представления контейнера для просмотра без использования xib или nib, которые будут от вас видны – User6391