我在viewController.swift
func didReceiveNewSession(_ session: QBRTCSession, userInfo: [String : String]? = nil) {
print("PLAY SESSION")
}
我打开应用程序,并在收到会话后得到一个日志PLAY SESSION
但是,如果我打开应用程序,然后转到viewControllerPage.swift
,然后再次返回到viewController.swift
,则在接收会话之后,我将收到两个日志PLAY SESSION
结果是,如果我打开viewController.swift
7-8次,则在接收会话后打印7-8 PLAY SESSION
即使我每次viewController.swift
打开,我也只希望获得一次会话
我要didReceiveNewSession
加载一次
答案 0 :(得分:2)
这正是viewDidload和viewDidAppear的用途
override func viewDidLoad() {
//insert the code you only want to run once here
}
override func viewDidAppear(_ animated: Bool){
//insert the code you want to run every time you load the VC
}
您是否有特定的原因不想使用它们?或者,您可以使用viewWillAppear()代替viewDidAppear()