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

三方:

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. npm模块管理器入门

    什么是 NPM npm 是 Node 官方提供的包管理工具,他已经成了 Node 包的标准发布平台,用于 Node 包的发布.传播.依赖控制.npm 提供了命令行工具,使你可以方便地下载.安装.升级. ...

  2. 多服务器操作利器 - Polysh

    多台服务器下的痛苦人生 分布式架构下的系统,可以说每个服务都是分别部署在多台服务器上的,有的甚至还需要多机房,在这种架构下可以说可以很好的做到了易扩展.容灾等功能.推荐的服务部署为一服务多机器.一机器 ...

  3. JavaScript学习笔记(十五)——对象之Date,RegExp

    在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意! 如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/ ...

  4. C#爬虫系列(二)——食品安全国家标准数据检索平台

    上篇对“国家标准全文公开系统”的国标进行抓取,本篇对食品领域的标准公开系统“食品安全国家标准数据检索平台”进行抓取. 平台地址:http://bz.cfsa.net.cn/db 一.标准列表 第一步还 ...

  5. HDU5983Pocket Cube

    Pocket Cube Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Tota ...

  6. pipelineDB初体验

    官网:http://www.pipelinedb.com/ pipelineDB是基于postgres的stream数据库.完全兼容pg的东西. 由于产品需要解决性能这块瓶颈,老大让试试这款基于流计算 ...

  7. 关于AJAX使用中出现中文乱码的问题

    自己初学AJAX,遇到一个棘手的bug就是xmlHttp.open("get",url,false);url里面有中文,结果出现乱码.不过最后在百度,和诸位博主的帮助下,成功解决了 ...

  8. 将项目打包成jar,如何又将jar还原成项目

    一.将项目打包成jar 第一步: 选择项目,鼠标右键,选择export ,出现如下 接下来就是点击Next,Next,最后点击Finish 后 会生成jar 二.将jar还原成项目 第一步 用反编译工 ...

  9. COM组件转换为.NET元数据2

    上一篇通过命令的方式实现COM组件与.NET元素的转换.这次直接在VS中转换. 以下为步骤:

  10. PTA题---求两个有序序列中位数所体现的思想。

    ---恢复内容开始--- 近日,在做PTA题目时,遇到了一个这样的题,困扰了很久.题目如下:已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数.有序序列A​0​​,A​1​​, ...