搭建项目常用的方法属性,欢迎追加

三方:

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

扩展:

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

2、ToolExtension: 用十六进制颜色创建UIColor

extension UIColor {

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

使用方法:

  let heigth = XiPhoneHeight(height: )

  let image = XImageName(name: "iamge")

SwiftPCH.swift

//适配高 宽
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 == {
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(, , )
} 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: )
CC_MD5(cStr!,(CC_LONG)(strlen(cStr!)), buffer)
let md5String = NSMutableString();
for i in ..< {
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> {
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> {
imageView.layer.cornerRadius = cornerRadiu
imageView.layer.masksToBounds = true
} imageView.contentMode = .scaleAspectFit //保持比例 return imageView
}

Swift3.0 创建工程常用的类、三方、以及扩展 1.5的更多相关文章

  1. cocos2d-x 3.0 创建工程的模板

    将下面的代码拷贝到文本文件中,重命名文件为 cocos3.0创建工程.bat @echo off echo -------------------------create project with p ...

  2. swift3.0 创建经典界面的九宫图

    网络上很多例子都是早期的 Object-C的效果,现在用到Swift3.0开发,故把网络上的例子翻译过来,达到基本的效果.可是现在这个还不算很满意,再下次继续进行优化 override func vi ...

  3. swift3.0 创建一个app引导页面

    swift毕竟不像是oc ,第三方的框架很多,更何况是3.0,自己动手写了个引导页面,看得上我代码的麻友可以拿去用 引导页面有三个部分构成,scrollview用语切换引导视图,pageControl ...

  4. 青瓷qici - H5小游戏 抽奖机 0 创建工程

    安装运行平台需要nodejs,具体方法请参照官方说明文档. 运行后打开了一个空空的窗口. 首先我们进行工程设置,菜单>工程>设置 菜单里面设置我们游戏的名称,到时候会显示在游戏的title ...

  5. cocos2d-x.0创建工程

    $ python create-multi-platform-projects.py -p PompaDroid -k cn.philon.pompadroid -l cpp

  6. Swift3.0变化分享

    Swift 3.0 做出的改变很大,在这篇文章中,我将尽我所能,利用代码样例给大家解释Swift 3.0最重要(要命)的改变,希望大家能够做好升级Swift 3.0 的准备.Swift 3.0的改变不 ...

  7. swift3.0变化总结

    Swift 3.0 做出的改变很大,在这篇文章中,我将尽我所能,利用代码样例给大家解释Swift 3.0最重要(要命)的改变,希望大家能够做好升级Swift 3.0 的准备.Swift 3.0的改变不 ...

  8. Swift2.3 --> Swift3.0 的变化

    Swift3.0语法变化 首先和大家分享一下学习新语法的技巧: 用Xcode8打开自己的Swift2.3的项目,选择Edit->Convert->To Current Swift Synt ...

  9. Swift3.0语法变化

    写在前面 首先和大家分享一下学习新语法的技巧:用Xcode8打开自己的Swift2.3的项目,选择Edit->Convert->To Current Swift Syntax- 让Xcod ...

随机推荐

  1. Centos6.9安装vsftpd并配置多用户的方法

    本文介绍了Centos6.9安装vsftpd并配置多用户的方法,分享给大家,具体如下: 一.安装vsftpd ? 1 2 3 4 5 6 7 8 #安装vsftpd yum -y install vs ...

  2. 最简单的optparse模块的用法

    optparse模块是python自带的模块,可用于处理命令行 #!/usr/bin/env python # -*- coding: utf-8 -*- """ __a ...

  3. python基础教程——切片

    获取list或tuple的部分元素: L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] L[0:3] ['Michael', 'Sarah', 'Tra ...

  4. 用JS实现Ajax请求

    AJAX核心(XMLHttpRequest) 其实AJAX就是在Javascript中多添加了一个对象:XMLHttpRequest对象.所有的异步交互都是使用XMLHttpServlet对象完成的. ...

  5. 装饰模式(Decorator)

    装饰模式(Decorator) 顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下: Source类是被装 ...

  6. System.Security.Cryptography.RSA.FromXmlString 系统找不到指定的文件和X509读取证书文件系统找不到指定的文件异常

    前言: 最近公司增加服务器,在新增加的服务器中发现一些问题. 1.应用程序在读取证书文件中出现"系统找不到指定的文件."异常,但是已经确认证书文件存在.本地测试也可以读取,就在新增 ...

  7. python-02 数据类型、字符编码、文件处理

    标准数据类型 Python3 中有六个标准的数据类型: Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionary(字典) 数字 #整型 ...

  8. YiShop_最全微信营销涨粉技巧

    在我们开始推广企业订阅号之前,我们必须思考微信营销策略,客户通过微信可以获得什么?企业通过微信可以得到什么?微分销专家建议企业微信定位为互动.服务工具,因为获取一个粉丝很难,可是失去一个粉丝,却是一件 ...

  9. bootstrap validator 使用 带代码

    如何使用bootstrapVlidator插件? 下载bootstrapVlidator插件 在需要使用的页面引入bootstrapVlidator的js文件和css文件 如: 注: 在此基础之前必须 ...

  10. Linux上跑两个版本的php,5.4.45和5.3.24

    首先,装的实在艰难,所以容我吐槽两句: PHP好个P,两个小版本都不兼容,把这个php5.3.24放在5.4.45环境下都跑不了.对于我这种用多了向下兼容的java的人来说,简直无法想象! 网上有装俩 ...