1.單例如下
class LibraryAPI {
var name:String?
static let instance = LibraryAPI()
var height:Double?
}
這里static這個靜態(tài)常量,只會被創(chuàng)建一次,而且在需要的時候才會被創(chuàng)建
2.驗證
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let apiSingle = LibraryAPI.instance
apiSingle.name = "笑話"
apiSingle.height = 1.65
print(apiSingle.name!)
let button = UIButton.init(type: .Custom)
button.frame = CGRectMake(100, 109, 100, 50)
button.tag = 2222;
view.addSubview(button)
button.backgroundColor = UIColor.redColor()
button .addTarget(self, action:#selector(ViewController.clickButton(_:)) , forControlEvents: .TouchUpInside)
}
func clickButton(sender:UIButton){
let api = LibraryAPI.instance
print(sender.tag)
if let name = api.name
{
print(name)
}
print(api.height)
}
控制臺輸出:
笑話
2222
笑話
Optional(1.6499999999999999)