美文网首页
swift Selector 直接写"方法名会自动补全"

swift Selector 直接写"方法名会自动补全"

作者: 83633d6fb38f | 来源:发表于2019-05-22 11:28 被阅读0次

    importUIKit

    classMainViewController:UITabBarController{

    //MARK:属性 懒加载

    lazy var composeBtn =UIButton(composeForeImageName:"tabbar_compose_icon_add", composeBackImageName:"tabbar_compose_button")

    //MARK:重写方法

        override func viewDidLoad() {

    super.viewDidLoad()

            tabBar.addSubview(composeBtn)

        }

        override func viewWillLayoutSubviews() {

    composeBtn.center =CGPoint(x: tabBar.center.x, y:tabBar.bounds.height *0.5)

    //方法1:Selector("方法名")  Swift已经不推荐使用,会被提示改成第二种代替

    //        composeBtn.addTarget(self, action:Selector(("composeBtnClick")), for: .touchUpInside)

    //方法2:Selector("类名.方法名") 推荐写法

    composeBtn.addTarget(self, action:#selector(MainViewController.composeBtnClick), for: .touchUpInside)

    //方法3:"方法名"

    //          composeBtn.addTarget(self, action:"composeBtnClick", for: .touchUpInside)

        }

    }

    //MARK:事件监听

    extension MainViewController{

    //这里必须要加@objc 否则会崩溃

        @objc func composeBtnClick(){

    print("composeBtnClick")

        }

    }

    相关文章

      网友评论

          本文标题:swift Selector 直接写"方法名会自动补全"

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