摘要: 转自:https://www.jianshu.com/p/5f98941b4c71 在OC中习惯用block来传值,而swift中,block被重新定义了一下,叫闭包; 使用的技巧:谁定义谁传值; 案例使用A、B控制器: 1~4步在B中执行,最后在A中执行; B控制器: 1-定义 格式: typea 阅读全文
posted @ 2020-10-22 14:42 怕腥的鱼 阅读(970) 评论(0) 推荐(0) 编辑
摘要: 利用谓语语法和正则表达式,判断字符串是否符合特定格式 //利用谓语语法,判断一个字符串是否是邮箱。 func isValidEmail(testStr: String) -> Bool { //可以根据自己的需要改成别的正则表达式 let emailRegex = "[A-Z0-9a-z._%+-] 阅读全文
posted @ 2020-10-10 16:51 怕腥的鱼 阅读(174) 评论(0) 推荐(0) 编辑
摘要: .如何判断运行的设备类型,比如是iPad还是iPhone //判断设备类型,iPad或者iPhone if UIDevice.current.userInterfaceIdiom == .pad { print("设备是iPad") }else if UIDevice.current.userInt 阅读全文
posted @ 2020-10-10 16:45 怕腥的鱼 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 实现tableview滚动到底部的功能 //获得底部的位置 let bottomOffset = CGPoint(x: 0, y: scrollView.contentSize.height-scrollView.bounds.height) //设置scrollview显示的位置 scrollVi 阅读全文
posted @ 2020-10-10 16:44 怕腥的鱼 阅读(162) 评论(0) 推荐(0) 编辑
摘要: .如何解决闭包内部的循环引用问题 //通过定义捕获列表解决 lazy var someClosure: Void -> String = { //unowned:无主引用 weak:弱引用 [unowned self, weak delegate = self.delegate!] in // 这里 阅读全文
posted @ 2020-10-10 16:41 怕腥的鱼 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 所有小技巧都是基于Swift3 1.OC中的#pragma mark在swift中,使用// MARK:来实现 // MARK: 分割 // MARK: - 分割 // TODO: 分割 // FIXME: 分割 2.使用GCD实现延时执行 print("开始等待"+Date().descripti 阅读全文
posted @ 2020-10-10 16:39 怕腥的鱼 阅读(219) 评论(0) 推荐(0) 编辑
摘要: <!--?xml version="1.0" encoding="UTF-8" standalone="no"?--> 苹果Mac OS X操作系统下,隐藏文件是否显示有很多种设置方法,最简单的要算在Mac终端输入命令。显示/隐藏Mac隐藏文件命令如下(注意其中的空格并且区分大小写): 显示Mac隐 阅读全文
posted @ 2016-05-12 10:21 怕腥的鱼 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 打从这世界出现了操作系统以来,就没有过所谓真正的“多任务”。所谓多任务,无非是CPU速度够快而足以支撑极短时间内在多个进程内动作罢了。而所谓的“单任务”,无非是只能让当前任务独享资源罢了。简单来说,iOS 4 app类型可以分为三种:1. 保存现场。按下Home键10秒内直接杀死进程,并释放内存。2 阅读全文
posted @ 2012-07-16 18:00 怕腥的鱼 阅读(245) 评论(0) 推荐(0) 编辑