Swift3.0 建立工程經常使用的類、三方、以及擴展 1.5

搭建項目經常使用的方法屬性,歡迎追加ios

三方:git

 

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, ‘8.0’
use_frameworks!

target 'swift' do 
pod 'SwiftyJSON', '~> 3.0'
pod 'MJExtension', '~> 3.0.13'
pod 'MBProgressHUD', '~> 1.0.0'
pod 'AFNetworking', '~> 3.1.0'
pod 'SDWebImage', '~> 3.8.2'
pod 'XMLReader', '~> 0.0.2'
pod 'GDataXML-HTML', '~> 1.3.0'
pod 'Reachability', '~> 3.2'
pod 'FMDB', '~> 2.6.2'
pod 'SDAutoLayout'
pod 'Alamofire', '~> 4’



end
View Code

 

 

 

擴展:github

 

一、MBProgressHUD-Extension  http://pan.baidu.com/s/1jIpAngM

二、ToolExtension: 用十六進制顏色建立UIColor

extension UIColor {
    
    static func Xrgb(_ r: CGFloat, _ g: CGFloat, _ b: CGFloat) -> UIColor {
        return UIColor.init(red: r / 255,
                            green: g / 255,
                            blue: b / 255,
                            alpha: 1.0)
    }
    
    static func XcolorFromHex(_ Hex: UInt32) -> UIColor {
        return UIColor.init(red: CGFloat((Hex & 0xFF0000) >> 16) / 255.0,
                            green: CGFloat((Hex & 0xFF00) >> 8) / 255.0,
                            blue: CGFloat((Hex & 0xFF)) / 255.0,
                            alpha: 1.0)
    }
    
}

 

 

 

swift

使用方法:app

  let heigth = XiPhoneHeight(height: 80)

  let image = XImageName(name: "iamge")

 

SwiftPCH.swiftide

//適配高 寬
func XiPhoneHeight(height:CGFloat) -> CGFloat {
    
    return UIScreen.main.bounds.size.height * (height / 1334.0)
    
}


func XiPhoneWidth(width:CGFloat) -> CGFloat {
    
    return UIScreen.main.bounds.size.width * (width / 750.0)
    
}

// 獲取屏幕的 高寬
func XScreeWidth() -> CGFloat {
    
    return UIScreen.main.bounds.size.width
}

func XScreenHeight() -> CGFloat {
    
    return UIScreen.main.bounds.size.height
}



//系統相關


//系統iOS版本
func XiOSVersion() -> String {
    
    return UIDevice.current.systemVersion
    
    
}

//判斷系統版本是否是。。。
func XiOSVersionOfString(string:String) -> Bool {
    
    if string.compare(UIDevice.current.systemVersion as String).rawValue == 0 {
        return true
    }else{
        
        return false
    }
    
    
}

//model
func XiOSVersionModel() -> String {
    return UIDevice.current.model
}


// 須要給 地位 添加系統文件 不須要請注掉
//定位


//    let locationManager = CLLocationManager()
//    var currentLocation:CLLocation
//    var  lock = NSLock()

//    locationManager.delegate = self
//    locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
//    locationManager.distanceFilter = 50
//    locationManager.requestAlwaysAuthorization()
//
//
//
//    //委託傳回定位,獲取最後一個
//    func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
//        lock.lock()
//        currentLocation = locations.last    //注意:獲取集合中最後一個位置
//        print("定位經緯度爲:\(currentLocation.coordinate.latitude)")
//        //一直髮生定位錯誤輸出結果爲0:緣由是我輸出的是currentLocation.altitude(表示高度的)而不是currentLoction.coordinate.latitude(這個纔是緯度)
//        print(currentLocation.coordinate.longitude)
//        lock.unlock()
//
//    }
//    func locationManager(manager: CLLocationManager, didFailWithError error: NSError) {
//        print("定位出錯拉!!\(error)")
//    }
//
//




//屬性方法

//顏色
//backgroundcolor
func XbackgroundColor() -> UIColor {
    
    return UIColor.Xrgb(230, 230, 230)
}

func XClearColor() -> UIColor {
    return UIColor.clear
}

func XWhiteColor() -> UIColor {
    return UIColor.white
}



//圖片相關

//獲取本地圖片
//    func ImageName(name:String) -> UIImage {
//        return UIImage(named: name) as! String
//    }

func XImageData(data:Data) -> UIImage {
    return UIImage(data: data)!
}


//須要給Md5 建立橋接文件,不須要此方法 請注掉
//數據處理
func Xmd5String(str:String) -> String{
    let cStr = str.cString(using: String.Encoding.utf8);
    let buffer = UnsafeMutablePointer<UInt8>.allocate(capacity: 16)
    CC_MD5(cStr!,(CC_LONG)(strlen(cStr!)), buffer)
    let md5String = NSMutableString();
    for i in 0 ..< 16{
        md5String.appendFormat("%02x", buffer[i])
    }
    free(buffer)
    return md5String as String
}








//UI佈局 label button

//Label frame:上左 寬高
func XlabelFrame(x:CGFloat,y:CGFloat,width:CGFloat,height:CGFloat,text:String,textcolor:UIColor,font:CGFloat,backgroundColor:UIColor) -> UILabel {
    
    let label = UILabel(frame: CGRect(x: x, y:y, width: width, height:height))
    label.text = text
    label.textColor = textcolor
    label.font = UIFont.systemFont(ofSize: font)
    label.backgroundColor = backgroundColor
    
    
    return label
}


//無frame
func Xlabel(text:String,textcolor:UIColor,font:CGFloat,backgroundColor:UIColor) -> UILabel {
    
    let label = UILabel()
    label.text = text
    label.textColor = textcolor
    label.font = UIFont.systemFont(ofSize: font)
    label.backgroundColor = backgroundColor
    
    
    return label
}



//UIbutton
func XbuttonFrame(x:CGFloat,y:CGFloat,width:CGFloat,height:CGFloat,text:String,textcolor:UIColor,font:CGFloat,backgroundColor:UIColor,cornerRadius:CGFloat) -> UIButton {
    
    let button = UIButton(frame: CGRect(x: x, y:y, width: width, height:height))
    button.setTitle(text, for: .normal)
    button.setTitleColor(textcolor, for: .normal)
    button.titleLabel?.font = UIFont.systemFont(ofSize: font)
    if cornerRadius>0 {
        button.backgroundColor = backgroundColor
        button.layer.cornerRadius = cornerRadius
    }
    
    button.layer.masksToBounds = true
    
    
    return button
}

//UIImageview
func XimageViewFrame(x:CGFloat,y:CGFloat,width:CGFloat,height:CGFloat,name:String,backgroundColor:UIColor,cornerRadiu:CGFloat) -> UIImageView {
    
    let imageView = UIImageView(frame: CGRect(x: x, y:y, width: width, height:height))
    imageView.image = UIImage(named:name)
    imageView.backgroundColor = backgroundColor
    if cornerRadiu>0 {
        imageView.layer.cornerRadius = cornerRadiu
        imageView.layer.masksToBounds = true
    }
    
    imageView.contentMode = .scaleAspectFit //保持比例
    
    
    return imageView
}
相關文章
相關標籤/搜索