
Swift
高冷的钢背兽
iOS开发&前端开发
展开
-
Swift UITableViewCell Set方法赋值
在OC里,给tableView cell赋值的时候在cell里写一个对应的model,直接写model的set方法就可以很方便的赋值,在Swift里如果想以这种方式赋值可以如下方法:在cell里的代码 private var tempModel:contentMallGoodModel? = contentMallGoodModel() var model : conten原创 2017-02-16 11:34:44 · 4015 阅读 · 0 评论 -
Swift 富文本属性设置
let model:JYDiagnoseModel = modelArr[indexPath.row] as! JYDiagnoseModel let hitString = NSMutableAttributedString.init(string: "["+model.itemCode!+"]"+model.itemCnName!) let range = NS原创 2017-08-17 17:26:48 · 2791 阅读 · 1 评论 -
Swift 自定义init方法
在开发中,自定义init初始化构造函数实现参数传递比较常见1,在Swift中,类的初始化器有两种,分别是DesignatedInitializer(指定初始化器)和ConvenienceInitializer(便利初始化器)2,如果子类没有定义任何的指定初始化器,那么会默认继承所有来自父类的指定初始化器。3,如果子类提供了所有父类指定初始化器的实现,那么自动继承父类原创 2017-07-26 16:37:53 · 5287 阅读 · 0 评论 -
Swift 判断是否为NULL
跟后台交互的时候,经常返回<null>这种直接用 ** is NSNull 判断就可以了原创 2017-09-05 16:59:05 · 15019 阅读 · 1 评论 -
Swift 图片添加文字水印
新建个swift类,设置为UIImage的类别,UIImage对象调用该方法就返回添加水印之后的Image对象了import Foundationimport UIKitextension UIImage { func drawTextInImage()->UIImage { //开启图片上下文 UIGraphicsBeginImageContext原创 2017-09-07 14:27:54 · 2922 阅读 · 0 评论 -
Swift 判断是否有麦克风权限
在需要获取麦克风前进行判断如下 var allow = false let audioSession = AVAudioSession.sharedInstance() //首先要判断是否允许访问麦克风 audioSession.requestRecordPermission { (allowed) in i原创 2017-09-15 18:26:48 · 2848 阅读 · 0 评论 -
Swift UITableViewCell点击展开
在headview上增加点击事件 let tap:UITapGestureRecognizer = UITapGestureRecognizer.init(target: self, action: #selector(headViewClick)) view?.isUserInteractionEnabled = true view?.addGe原创 2017-11-09 20:19:22 · 2880 阅读 · 0 评论 -
Swift 获得字符串String长度
在Objective-C中我们通常使用length来获取NSString类型的字符串的长度,而在Swift中,String结构体没有了这个方法,那怎样获取String类型的字符串的长度呢?我们可以通过他的扩展属性成员characters的count属性来获取let titleString : String = "title"let count = titleString.charac原创 2017-02-10 14:44:37 · 30209 阅读 · 0 评论 -
Swift将PHAsset转为UIImage
新建一个swift NSObject类,封装方法如下import UIKitimport Photosclass SKPHAssetToImageTool: NSObject { @objc class func PHAssetToImage(asset:PHAsset) -> UIImage{ var image = UIImage()原创 2017-12-29 17:22:52 · 2338 阅读 · 0 评论 -
Swift 字符串截取
字符串转为数组,使得输出为["a", "b", "c", "d", "e", "f", "g", "h", "i"]let str = "a.b.c.d.e.f.g.h.i"let result = str.components(separatedBy:".")输出为["a", "b", "c", "d", "e", "f", "g", "h", "i"]原创 2018-02-24 18:19:56 · 362 阅读 · 0 评论 -
Swift 根据经纬度计算距离
//根据角度计算弧度 func radian(d:Double) -> Double { return d * Double.pi/180.0}//根据弧度计算角度func angle(r:Double) -> Double { return r * 180/Double.pi}//根据两点经纬度计算两点距离func getDistance(lat1:Dou原创 2018-02-26 09:17:55 · 1939 阅读 · 0 评论 -
swift 弹出请求位置权限
定义全局 var manager:CLLocationManager?调用 self.manager = CLLocationManager.init() manager?.requestWhenInUseAuthorization() manager?.requestAlwaysAuthorization() ...原创 2018-04-25 16:59:39 · 3149 阅读 · 0 评论 -
Swift tableviewcell左滑删除
设置哪一组哪一行可滑动 func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool{ if indexPath.section==1 { if indexPath.row != 0 { return true原创 2017-08-17 17:22:54 · 7244 阅读 · 0 评论 -
Swift for循环
大部分开发者更喜欢直接使用C式循环代码。在swift3.0后,C语言形式被彻底废弃.1:如何遍历一个字典或者数组? 首先要提的是swift的for..in..语法,这个语法在python当中被称之为迭代。用于数组,字典之类的数据内容遍历。从作用上分析,是直接将数组元素赋值给变量,并取出,无需通过数组下标来取值。而针对于字典,除了取出key值,我们还可以同时取出关键字。具体代码原创 2017-03-15 14:19:01 · 2100 阅读 · 0 评论 -
Swift 懒加载
private lazy var nameTF:UITextField = { return UITextField.init() }()原创 2017-03-14 13:44:38 · 396 阅读 · 0 评论 -
Swift 轻量级的键盘管理器
iOS平台轻量级的键盘管理器,使用简单功能强大,键盘再也不会挡住输入控件 ,有Swift / OC版本github地址:https://github.com/netyouli/WHC_KeyboardManager要求iOS 6.0 or laterXcode 8.0 or later集成使用CocoaPods:【Objective-c】 pod '原创 2017-02-15 16:03:15 · 1978 阅读 · 0 评论 -
Swift Date转String
在Swift3.0下1.获取当前时间并转成字符串func dateNowAsString() -> String { let nowDate = Date() let timeZone = TimeZone.init(identifier: "UTC") let formatter = DateFormatter() for原创 2017-03-01 18:22:55 · 4909 阅读 · 0 评论 -
Swift 分割字符串与截取字符串
Swift3.0语言教程分割字符串如果想要快速的创建一个数组,我们可以将字符串进行分割,分割后的内容将会生成一个数组。在NSString中有两个分割字符串的方法,分别为components(separatedBy:)方法和components(separatedBy:)方法。(1)components(separatedBy:)方法是将字符串根据指定的字符串参数进行分割,并将分别的内容转换原创 2017-02-21 11:40:04 · 15465 阅读 · 0 评论 -
Swift 替换字符串
Swift3.0语言教程替换子字符串Swift3.0语言教程替换子字符串,替换子字符串其实就是将字符串中的子字符串删除,然后再进行添加。为了让这一繁琐的过程变的简单,NSString提供了替换子字符串的3个方法,这3个方法分别为:replacingOccurrences(of:with:)、replacingOccurrences(of:with:options:range:)和replaci原创 2017-02-21 13:05:24 · 15207 阅读 · 0 评论 -
Swift 字符串比较/判断
Swift3.0语言教程比较、判断字符串Swift3.0语言教程比较、判断字符串,在一个程序中字符串很多时,常常会做的操作就是对这些字符串进行比较和判断。本小节将讲解这些内容。1.不区分大小写比较字符串比较可以分为:不区分大小写比较、区分大小写比较以及本地化比较三部分。首先我们来看不区分大小写比较,不区分大小写比较顾名思义就是不区分字符串中字母的大小写,即A和a相同。在NSString原创 2017-02-21 13:09:40 · 21890 阅读 · 0 评论 -
Swift 如何使用Range截取字符串
Swift中的Ranges和Objective-C中的NSRange有很大的不同,我发现在处理Swift中Ranges相关的问题的时候,总是要花费比我想象的更多的时间。不过,现在回过头来看看,发现Swift中的Ranges的使用还是比较合理的,但是想要正确的使用Ranges真的需要一些特别的技巧。看一个例子,下面这段代码展示的是截取以指定的字符开头和以指定的字符结尾的子字符串:va原创 2017-02-22 11:18:39 · 3441 阅读 · 0 评论 -
Swift Block传值
Swift3.0来实现传值-->前后两个控制器的反向传值,这里传递了一个地址的model第一个类 let address = MZAddressManagerViewController.init() address.orderInfo = self.orderInfo //将当前someFunctionThatT原创 2017-03-02 11:10:46 · 2769 阅读 · 0 评论 -
Swift CGFloat和String互相转化
Swift 3.0版本适用1.CGFloat 转化成StringdateCell.detailDateLabel.text = String.init(format:"%.2f",order.fare!)2.String 转化成CGFloatfunc StringToFloat(str:String)->(CGFloat){原创 2017-02-15 14:11:36 · 12940 阅读 · 0 评论 -
Swift Int Float CGFloat互相转化
Swift 语言比较严格里不同类型是不能进行运算的,必须把他们转化到相同的数据类型 let three = 3 let pointOneFourOneFiveNine = 0.14159 let pi = Double(three) + pointOneFourOneFiveNine let pi2 = Float(pi)原创 2017-02-15 14:47:46 · 22562 阅读 · 3 评论 -
Swift Delegate使用
我们以UItableViewcell里按钮点点击事件作为例子在cell里声明一个delegate weak var delegate:MZAccumulateCellDelegate?需要实现的方法 protocol MZAccumulateCellDelegate:NSObjectProtocol { func buyButtonDidCli...原创 2017-03-09 11:25:17 · 544 阅读 · 1 评论 -
Swift 判断是否是数字
有人利用Int判断,会发现如果有小数点就判断为不是数字了,这里我们改为通过float判断,如果包含小数点也可以正确判断代码如下: func isPurnFloat(string: String) -> Bool { let scan: Scanner = Scanner(string: string) var val:F原创 2017-03-06 17:48:06 · 9756 阅读 · 0 评论 -
Swift 根据路径获取文件大小
var fileSize : UInt64 = 0 do { let attr = try FileManager.default.attributesOfItem(atPath: path) fileSize = attr[FileAttributeKey.size] as! UInt64 ...原创 2019-06-04 17:29:31 · 2721 阅读 · 0 评论