Dismiss Modal View

2019-05-11 22:16发布

If I'm not mistaken, modal views have to be dismissed from the parent view, not from the modal view itself.

In my current project I have two modal views. In the first one, I pass data to the parent view. When the data is passed to the parent view, the dismiss is executed.

Now, I have another modal view that doesn't pass data to the parent view, so I don't know how to dismiss other than doing one self dismissModalView

Other than that, any other suggestion for a good practise on this topic?

Thanks in advance!

UPDATE:

From the answers I´m getting, I see I haven´t make myself very clear (not unusual, BTW).

I know how to self dismiss a modalViewController. That´s no problem. I also know how to use the protocol-delegate method to dismiss the modalViewController from the parent view when some data is passed.

My question is: how to dismiss the modalViewController from the parent view when no data is passed.

Thanks again!

8条回答
该账号已被封号
2楼-- · 2019-05-11 22:25

For IOS6 and later use

[self dismissViewControllerAnimated:YES completion:nil];

查看更多
我只想做你的唯一
3楼-- · 2019-05-11 22:26

You can call from the modalView :

[self dismissModalViewControllerAnimated:YES];

But... If you want to have a constant coding pattern, whatever the modal view "returns" something or not, I suggest you to dismiss you views from the parent (the one that calls, the one that dismiss). But you can do both.

Does that answer your question ?

查看更多
等我变得足够好
4楼-- · 2019-05-11 22:29

Swift version...

self.dismissViewControllerAnimated(true, completion:nil)
查看更多
戒情不戒烟
5楼-- · 2019-05-11 22:30

Swift 4 version:

self.dismiss(animated: true, completion: nil)

查看更多
SAY GOODBYE
6楼-- · 2019-05-11 22:38

Do take note that

[self dismissModalViewControllerAnimated:YES];

has been deprecated from iOS 6 onwards. Rather use

[self dismissViewControllerAnimated:YES completion:nil];
查看更多
一夜七次
7楼-- · 2019-05-11 22:39

You should use an unwind segue, especially since you can use it to get information from the presented view controller. This shows how to create one: http://spin.atomicobject.com/2014/10/25/ios-unwind-segues/

查看更多
登录 后发表回答