Swift protocol 結合 where <面向協議編程>

//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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章