swift protocol 没传入的问题

发布于 2022-09-06 02:12:02 字数 632 浏览 31 评论 0

如图,我写了一个 protocol 要从 view 回传至 viewcontroller

图片描述
图片描述
图片描述

但所属的物件层级 是 HomePageViewController -> HomePageView ->LeftSideMenuView

我问题一些 大大,都是说 「因为没传进去」?没传进去?这个我不懂,这样的写法不是对的吗?(对不起因为小妹实在不知道这个的原理,只是靠硬背来使用 )

请问各位大大,正确的写法应该是什么???(这里卡了两天了...)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

桜花祭 2022-09-13 02:12:02

protocol onSideMenuButtonAction {

 func leftButtonAction(type:String)

}

class HomePageViewController: UIViewController,onSideMenuButtonAction {

var homePageView:HomePageView{ return self.view as! HomePageView }
override func loadView() {
    view = HomePageView()
    homePageView.bindTo(action:self)
    }

}

class HomePageView: UIView {

 fileprivate lazy var leftSideMenuView:LeftSideMenuView = LeftSideMenuView()
  override init(frame: CGRect) {
    super.init(frame: frame)
    addSubview(leftSideMenuView)  
  }
  func bindTo(action: onSideMenuButtonAction) {
    leftSideMenuView.sideMenuAction = action
   }
    func onButtonAction(sender:SideMenuButton) {
        self.sideMenuAction?.leftButtonAction(type: text)
    }

}
class LeftSideMenuView: UIView {

var sideMenuAction:onSideMenuButtonAction?

}

中間設一個中繼

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文