回答
在這裏看到Dismissing a Presented View Controller大約一半向下
當談到時間以關閉一個呈現視圖控制器,優選的做法是讓所述呈現視圖控制器關閉它。
所以,你應該使用一個IBAction爲和編寫代碼按鈕後駁回點擊
見我的回答here。它給你兩種方式來解除故事板中的模態視圖控制器。我喜歡方法二,因爲你在項目中添加類,你可以使用單獨的故事板來完成無模式代碼的返回。也就是說,如果你已經實現了一個委託和委託協議,它也是放置dismissModalViewController語句的好地方。
我發現通常當我試圖在故事板中這樣做時,我寧願不創建額外的類。從呈現視圖控制器執行解除操作仍然有意義,所以需要一個類來支持它。
如果您在呈現視圖控制器中創建了一個IBAction並將其命名爲例如
- (IBAction)dismissAnyModel:(id)sender
{
[self dismissViewControllerAnimated:YES completion:nil];
}
然後從故事板,無論你想觸發從您創建一個動作的第一個響應者,如下圖所示解僱。您可以通過爲IBActions創建唯一名稱來擴展此功能,以便與多個呈現視圖控制器一起工作。
要做到這一點,你需要首先在你的項目中創建的類型UIStoryboardSegue
的對象的UIStoryboard
內
內。然後插入下面的方法班上。這裏是我的類
@implementation DismissController
- (void)perform{
UIViewController *sourceVC = self.sourceViewController;
[sourceVC.presentingViewController dismissViewControllerAnimated:YES
completion:nil];
}
現在你可以使用它你UIStoryboard
內。選擇應使UIViewController
消失的按鈕並將其拖動到您想要去的UIViewController
。在我的情況下,它顯示**因爲我的班級的名稱而忽略控制器*。
選擇它,就大功告成了! 還有一個很好的解釋on this website.
woow,謝謝你的! – 2017-12-11 19:50:20
@LeoCavalcante歡迎您! :) – 2017-12-11 19:50:57
據亞歷克斯CIO答案Swift 3
和XCode 8.3
:
創建類:
import UIKit
class DismissSegue: UIStoryboardSegue {
override func perform() {
self.source.presentingViewController?.dismiss(animated: true, completion: nil)
}
}
但在故事板,你應該選擇:
行動Segue - > Custom - >解僱
只有在這個選項出現Action Segue
菜單
- 1. 關閉其他故事板
- 2. iOS故事板
- 3. 關閉自動縮放故事板
- 4. iOS:故事板Segue
- 5. 故事板iOS MBProgressHUD
- 6. iOS和iPad的故事板
- 7. 故事板中的iOS模擬器
- 8. 關閉pdf格式文件後的故事板segue錯誤
- 9. iOS 8.3故事板菜單
- 10. ios 5故事板問題
- 11. 故事板/模塊
- 12. iOS的故事板改變
- 13. ios故事板邏輯
- 14. IOS-彈出故事板
- 15. 故事板中的ios lazytableimages
- 16. iOS故事板本地化
- 17. 更改iOS故事板
- 18. iOS故事板佈局
- 19. 生成故事板ios
- 20. IOS - 通過故事板
- 21. iOS 5故事板評論
- 22. IOS故事板:恢復ID就像故事板ID一樣?
- 23. iOS 5.0 Modal View不旋轉(故事板)
- 24. iOS故事板 - 重新使用UIViewController
- 25. Xcode故事板開關
- 26. iOS 5多故事板旋轉
- 27. 標籤欄與ios故事板
- 28. 故事板的iOS通過賽格瑞
- 29. iOS版:雙的UITableViewController用故事板
- 30. 故事板從模擬器
的「所以,你應該使用一個IBAction爲和編寫代碼按鈕後解僱點擊」其實是錯誤的。蘋果在說什麼是「你需要通知PARENT視圖控制器,然後解除模式。」 – 2015-06-15 00:26:07
現在鏈接被破壞 – po5i 2016-06-23 15:56:59
我做了一個分類:) https://github.com/evanstoddard/UIViewController-Dismiss-Actions – 2016-07-08 00:11:32