Swift protocol 结合 where <面向协议

作者: 韦德460 | 来源:发表于2017-06-20 15:07 被阅读78次
    //protocol
    protocol WRProtocol
    {
        func getString()
    }
    
    // 只给遵守了 WRProtocol 协议的UIView添加了下面的拓展
    // 强大的协议拓展  可以给协议添加默认实现   面向协议编程的基础
    extension WRProtocol where Self:UIView 
    {
        func getString() -> String{
            return "string"
        }
    }
    
    class MyView:UIView { 
    }
    
    // MyView遵守了WRProtocol协议,所以给MyView添加拓展
    extension MyView: WRProtocol {
    }
    
    let myView = MyView()
    // 因此这里myView可以调用getString()方法
    let aStr = myView.getString()
    


    强烈推荐:超简单!!! iOS设置状态栏、导航栏按钮、标题、颜色、透明度,偏移等

    https://github.com/wangrui460/WRNavigationBar
    https://github.com/wangrui460/WRNavigationBar_swift



    欢迎关注我的微博:wangrui460

    相关文章

      网友评论

        本文标题:Swift protocol 结合 where <面向协议

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