美文网首页
swift 代理

swift 代理

作者: 机智的猪 | 来源:发表于2017-08-18 14:25 被阅读29次

    代理
    在tableviewcell中 点击view controller收到并跳转控制器

    old
    1.cell中 定义协议
        @objc protocol SponsorTableViewCellDelegate: NSObjectProtocol {
            func pushToSponsorDetailView(model: SponsorData)
        }
    
    2.cell中 写一个代理属性
        weak var delegate: SponsorTableViewCellDelegate?
    
    3.cell中 按钮点击事件中 通知代理做事情
        @objc func topContentViewTap() -> Void {
            self.delegate?.pushToSponsorDetailView(self.sponsorData)
        }
    
    4.控制器中 设置代理
            cell.delegate = self
    
    5.实现代理的方法
        func pushToSponsorDetailView(model: SponsorData) -> Void {
    
            let sponsorDetailVC = SponsorDetailTableViewController()
            sponsorDetailVC.modelData = model
            self.navigationController?.pushViewController(sponsorDetailVC, animated: true)
        }
    
    new
    1.cell中定义协议
        protocol SponsorTableViewCellDelegate {
            func pushToSponsorDetailView(model: SponsorData)
        }
    
    2.cell中 写一个代理属性
        var delegate: SponsorTableViewCellDelegate?
    
    3.cell中 按钮点击事件中 通知代理做事情
        @objc func topContentViewTap() -> Void {
            self.delegate?.pushToSponsorDetailView(self.sponsorData)
        }
    
    4.控制器中 设置代理
            cell.delegate = self
    
    5.实现代理的方法
        func pushToSponsorDetailView(model: SponsorData) -> Void {
    
            let sponsorDetailVC = SponsorDetailTableViewController()
            sponsorDetailVC.modelData = model
            self.navigationController?.pushViewController(sponsorDetailVC, animated: true)
        }
    
    
    
    

    相关文章

      网友评论

          本文标题:swift 代理

          本文链接:https://www.haomeiwen.com/subject/blkarxtx.html