Swift

Swift - typealias

2018-04-12  本文已影响15人  andyJi

typealias用来为已存在的类型重新定义名称的。


// 声明
typealias sendValueClosure = (sendString: String) -> Void
// 持有
var callBackString: sendValueClosure?
// 调用
self.callBackString!(sendString: self.nameString)
typealias DownSuccess = (json: NSURLResponse, filePath: String?) -> ()

这样我们在使用它的时候只需要:

func Post(url:String? , parameter:NSDictionary , success: DownSuccess)
protocol changeName {
  func changeNameTo(name:String)
}
protocol changeSex {
  func changeSexTo(sex:SEX)
}
typealias changeProtocol = protocol <changeName, changeSex>

struct Persion:changeProtocol {
  func changeNameTo(name:String) {
    //
  }
  func changeSexTo(sex:SEX) {
    //
  }
}
public typealias AnyClass = AnyObject.Type
public typealias NSInteger = Int
// OC中项目里有个类
#import "OCClass.h"

// swift重构之后
impot SwfitClass

typealias OCClass = SwfitClass
typealias MyFollowerDelegate = MyFollowerViewController
extension MyFollowerDelegate:UITableViewDelegate {
    // tableView 的 delegate 方法
}

typealias MyFollowerDataSouce = MyFollowerViewController
extension MyFollowerDataSouce:UITableViewDataSource {
    // tableview 的 dataSource 方法
}
上一篇下一篇

猜你喜欢

热点阅读