我有两个UITableViewController,第一个:
protocol FetchUserProfileData {
func getNumberOfRequests()
}
class ListEvents: UITableViewController{
var fetchInfo:FetchUserProfileData?
func getNumberOfRequests() -> Int{
return 12
}
以及UIViewController:
class UserProfileDetails:UIViewController, FetchUserProfileData {
var listEvents: UserListEvents?
func getNumberOfRequests(){
}
override func viewDidLoad(){
listEvents?.fetchInfo = self
print(listEvents?.getNumberOfRequests())
这行:
print(listEvents?.getNumberOfRequests())
给我一个nil
值,而不是12
。。。这里怎么了?----编辑
好吧,现在我看到listenvents是空的。。。所以我的问题是如何将这些数据从listenvents传递到UserProfileDetails?
最佳答案
在这段代码中,listEvents
可能为零。
但是,你使用协议的方式在我看来很奇怪。我希望:getNumberOfRequests
在返回Int的协议中ListEvents
应该执行协议,而不是UserProfileDetails
应删除getNumberOfRequests()
中的空UserProfileDetails
关于ios - 我通过协议(protocol)将数据从UITableViewController传递到UIViewController,而不是int值,我得到的是nil。为什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36136383/