• Swift与OC混编


    OC调用Swift的方法:添加 import "xxxx-Swift.h" 头文件即可

    Swift调用OC的方法:需要建立桥接: xxxx-Bridging-Header.h 头文件(建立方法自行百度)

    注意:

    1.在Swift调用OC的单例方法时,直接xxxx(),()里面可以有参,例如:

    oc中代码

    @interface HPModel : NSObject
    + (instancetype)model;
    @end

    swift调用

     let model:HPModel = HPModel()

    直接用 HPModel() 代替了 + (instancetype)model

    2. Swift中协议如果在OC中调用,需要在协议protocol关键字前面添加 @objc 

    3. Swift中防止循环引用,直接用在var前面加上weak即可

    4. Swift中ViewController默认构造方法不再关联同名的xib文件,需要开发者制定xib的名字,否则会报错:fatal error: unexpectedly found nil while unwrapping an Optional value。

    • 解决办法:
        init() {
            
            super.init(nibName: "xibName", bundle: NSBundle.mainBundle())
            
        }
        
        required init?(coder aDecoder: NSCoder) {
            super.init(coder: aDecoder)
            fatalError("init(coder:) has not been implemented")
        }
    此文章为个人笔记,方便自己以及有需要的朋友查看,转载请注明出处!
  • 相关阅读:
    sed
    zabbix时间不同步
    zabbix-agent安装
    zabbix安装(网络)
    sendmail启动报错
    12306:被骂十年不吭声,终成大器
    一文带你看清HTTP所有概念(转)
    为什么 K8s 在阿里能成功(转)
    一文解读融资方式
    一文解读工业互联网 (转)
  • 原文地址:https://www.cnblogs.com/shpyoucan/p/5601157.html
Copyright © 2020-2023  润新知