ios - 如何从子viewController中的UITableView更新父 Controller 中UIScrollView的contentSize

标签 ios iphone swift

我使用以下代码从 subview Controller 更新父 Controller 的约束,但它产生了问题:

 func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
    print("in will display row - \(indexPath.row)")
    if (UIApplication.visibleNavigationController.visibleViewController is UserPrfileControl){
        if (UIApplication.visibleNavigationController.visibleViewController as! UserPrfileControl).childControllerToUpdate == "userPost"{
            (UIApplication.visibleNavigationController.visibleViewController as! UserPrfileControl).commentViewHeight.constant = 0
            (UIApplication.visibleNavigationController.visibleViewController as! UserPrfileControl).burnedPostsHeight.constant = 0 . 
            (UIApplication.visibleNavigationController.visibleViewController as! UserPrfileControl).userProfileViewHeight.constant = self.tableView.contentSize.height
        }    
    }    
}   

最佳答案

我建议您在 viewDidLayoutSubviews 中编写此代码,并且请不要使用这种方式(UIApplication.visibleNavigationController.visibleViewController as!UserPrfileControl),只需为您的父 Controller 添加属性即可。

关于ios - 如何从子viewController中的UITableView更新父 Controller 中UIScrollView的contentSize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52888095/

相关文章:

ios - 将 Firebase 数据库添加到 iOS 部分时遇到问题

ios - 在同一个 NavigationController 下的两个 ViewController 之间翻转

iphone - 如何计算应用程序的 itms-apps 链接,预提交?

swift - 尝试发送数据以查看时出现映射问题

swift - NSCalendar 不校正 GMT 时间

ios - 对 IP 地址的 Cordova XmlHttpRequest 被阻止

ios - NSLocale preferredLanguages 总是检索 'en' 语言

swift - 从 CSV 在 Core Data 中创建 2000 万条记录 - macOS

Iphone - NSUserDefault 设置未出现在设置页面上

iphone - 为 iOS(iPhone 和 iPad)制作两个 Storyboard