oc混编
-SmartHome-Bridging-Header.h
-#import "SmartHome-Swift.h"
定义类
class WeatherModel {
var address:String=""
init(address:String) {
self.address=address
}
}
闭包
typealias Complete = (WeatherModel?) -> ()
func weatherWithProvince(localCity:String,complete:Complete){
// 。。。。
complete(weather)
// 。。。。
}
延展
extension AppDelegate{
func dosth()
{
//to do
}
}
懒加载
lazy var btn:UIButton = {
let _btn = UIButton(frame: CGRectMake( 0,0,0,0))
_btn.setImage(voiceIconSelected, forState: UIControlState.Normal)
_btn.backgroundColor = UIColor.whiteColor()
_btn.layer.cornerRadius = 19
_btn.layer.masksToBounds = true
_btn.layer.borderWidth = 1.0
_btn.layer.borderColor = mainColor.CGColor
return _btn;
}()
重写get set方法实现联动效果
var _currentTemp: Int = 18
var currentTemp:Int{
get{
return _currentTemp
}
set {
if(newValue > 14 && newValue < 36){
_currentTemp = newValue
self.cm.temp = _currentTemp
print("Recived new value", newValue)
self.leb.setTitle("\(_currentTemp)°", forState: UIControlState.Normal)
self.smallProgress!.progress = CGFloat( _currentTemp - 15 ) / 21.0;
}
}
}
单例
class MyLocationManager{
class func sharedManager()->MyLocationManager{
struct YRSingleton{
static var sharedAccountManagerInstance:MyLocationManager? = nil;
static var predicate:dispatch_once_t = 0
}
dispatch_once(&YRSingleton.predicate,{
YRSingleton.sharedAccountManagerInstance = MyLocationManager()
})
return YRSingleton.sharedAccountManagerInstance!
}
}
转json字符串
func toJSONString(jsonSource: AnyObject) -> String {
var data = NSData()
do {
try data = NSJSONSerialization.dataWithJSONObject(jsonSource, options: NSJSONWritingOptions.PrettyPrinted)
} catch let error as NSError {
print(error)
}
let strJson = String(data: data, encoding: NSUTF8StringEncoding)
return strJson!
}
253

被折叠的 条评论
为什么被折叠?



