【发布时间】:2017-01-12 16:23:09
【问题描述】:
我试图在将模态 VC (FirstStartVC) 解散回主 VC 后触发一个函数。我知道我必须使用委托,但它不起作用并且我的调试区域保持空白。
在其他问题主题中,有些人的工作方式与下面的完全相同。所以我不知道我做错了什么。有谁知道我需要更改代码吗?
// FirstStartVC.swift
//
import UIKit
import CoreData
import JSSAlertView
protocol NewUser: class {
func newUserAction()
}
class FirstStartVC: UITableViewController, UITextFieldDelegate {
var delegation : NewUser?
func saveNewUser(){
self.delegation?.newUserAction()
self.dismiss(animated: true, completion: nil)
}
}
@IBAction func saveSettings(_ sender: Any) {
self.saveNewUser()
}
override func viewDidLoad() {
super.viewDidLoad()
print (delegation)
}
}
//
// ViewController.swift
//
import UIKit
import UserNotifications
import GoogleMobileAds
import CoreData
import JSSAlertView
class ViewController: UIViewController, UNUserNotificationCenterDelegate, NewUser {
func newUserAction() {
print("Reload some labels")
}
override func viewDidLoad() {
super.viewDidLoad()
var firstStart = FirstStartVC()
firstStart.delegation = self
}
}
【问题讨论】:
-
看起来你想在这个视图控制器完成它的事情时通知'主 VC'。你能分享你在'main VC'中的代码吗?
标签: ios swift delegates modal-dialog protocols