- 博客(40)
- 问答 (1)
- 收藏
- 关注
原创 Swift : 逃逸闭包 和 @escaping 属性
**非逃逸闭包:**调用者完成前闭包就被执行完成了。**逃逸闭包:**调用函数完成了,但是闭包还没有被调用或者没有被完成。***例:***所有网络请求的函数,在完成调用请求后,直到响应返回,闭包才会被调用,所以这个类型的网络请求函数内等待响应的闭包就是逃逸闭包。这个类型的闭包,需要加入一个@escaping标记才可以编译通过。如下代码,展示了一个非逃逸闭包,和一个逃逸闭包。后者已经被标记了@escapings:函数DispatchQueue.main.asyncAfter用来延时。此处延时1s再调用
2021-12-23 10:07:57
340
原创 UIImage——resizableImageWithCapInsets:resizingMode:拉伸属性
UIImage部分区域调整大小iOS5.0resizableImageWithCapInsetsiOS6.0resizableImageWithCapInsets:resizingMode:不同之处在于iOS6增加了一个resizingMode用于指定是使用平铺还是拉伸方式处理图片- (UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets API_AVAILABLE(ios(5.0)); // create a resizab
2021-07-08 10:27:59
630
原创 portocol——消息通知的另一种方式
原理iOS中消息通知是以notificationName来做为标识,发通知时,监听了同一个notificationName的实例会收到通知。另一种方式是以protocol为标识,发通知时,以protocol+selector,来判断要发送给哪些实例。做法如下:将需要通知的方法定义成protocol,通常是将一组有关联的方法定义在同个protocol中。以protocol为key,监听该protocol的实例(可能有多个)为value,组成映射关系,即protocol->observer l
2021-07-07 17:00:08
253
转载 拖动UIScrollView时的delegate调用调用顺序
https://blog.youkuaiyun.com/gx_wqm/article/details/51541785
2021-03-29 11:06:39
150
转载 Swift 界面之间的3种传值方式:正向传值、协议传值、闭包
https://blog.youkuaiyun.com/zhoushuangjian511/article/details/50204481
2021-03-11 18:31:32
567
转载 GestureRecognizer的6大手势与代理方法详细使用
https://blog.youkuaiyun.com/aspirer7000/article/details/101102468
2021-03-11 16:54:22
119
原创 UIView的clipsToBounds和CALayer的masksToBounds的区别
clipsToBounds(UIView)是指视图上的子视图,如果超出父视图的部分就截取掉masksToBounds(CALayer)却是指视图的图层上的子图层,如果超出父图层的部分就截取掉
2021-03-03 09:47:16
225
转载 iOS定时器NSTimer的使用和注意点
https://www.jianshu.com/p/b4dc619ec40d?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
2021-02-24 10:36:25
174
转载 Swift 的坑:如何实现 enum 的多选
https://blog.youkuaiyun.com/liuyingming910/article/details/42496005
2021-02-22 11:11:20
262
原创 Xcode文件名后的字母含义
在Xcode中,左侧的dock区域显示项目结构。如果项目中使用SVN、Git等版本控制工具后,就会出现字母符号。这些符号表示自上一次提交以后,每个文件发生了哪些变化。其中,Xcode中常见的符号有几种:A表示新增;D表示删除;M表示修改;R表示替代;C表示冲突;I表示忽略;!表示丢失。...
2021-02-19 19:04:08
190
原创 objective-c 字符串、日期、Int转换
1.字符串转换为日期//实例化一个NSDateFormatter对象NSDateFormatter* dateFormat = [[NSDateFormatter alloc] init];//设定时间格式,这里可以设置成自己需要的格式[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//转换NSDate *date =[dateFormat dateFromString:@"1980-01-01 00:00:01"];2. 日期转换为字符串
2021-02-05 13:50:57
265
转载 点语法
1. 点语法的本质其实点语法的本质还是方法调用当使用点语法时,编译器会自动展开成相应的方法2. 点语法注意点语法的本质是方法的调用,而不是访问成员变量,当使用点语法时,编译器会自动展开成相应的方法调用。切记点语法的本质是转换成相应的对setter和getter方法调用,如果没有set和get方法,则不能使用点语法。不要在getter 与 setter方法中使用本属性的点语法- (void) setAge:(int)age { // 下面的代码会引发死循环 self.ag
2021-02-05 09:32:15
460
转载 KVO操作和通知(Notification)——通知(Notification)
https://www.cnblogs.com/zhun/p/5572808.html
2021-02-05 09:19:17
174
原创 UICollectionView——2.环形布局(swift)
主要步骤:添加一个class继承UICollectionViewFlowLayout添加一个数组属性,用来存放每个item的局部信息(item.frame)重写prepare方法,设置每个item的frame,并存入数组重写layoutAttributesForElements方法,并将存放item.frame信息的数组返回import UIKitimport Foundationclass CircleLayout: UICollectionViewFlowLayout { v.
2021-01-21 09:29:20
441
原创 UICollectionView——1.瀑布流(swift)
主要步骤:添加一个class继承UICollectionViewFlowLayout添加一个itemCount:Int,用来设置item数量,在创建对象时要传入添加一个数组属性,用来存放每个item的局部信息(item.frame)重写prepare方法,设置每个item的frame,并存入数组重写layoutAttributesForElements方法,并将存放item.frame信息的数组返回//// UICollectionViewFlowLayout1.swift// sn.
2021-01-20 12:07:38
744
1
转载 UIView——找到其所在的UIViewController
有时我们需要通过 UIView 对象获取该对象所属的 UIViewController。比如我们在自定义单元格(tableViewCell 或 collectionViewCell)中需要对导航控制器(navigationController)进行一些操作,就需要先获取到其所在的 UIViewController。1. 实现原理UIView 类继承于 UIResponder,通过 UIResponder 的next 方法来获取 UIViewController。如果 next 返回是空,则继续向
2021-01-19 15:14:59
601
原创 2、UICollectionView的使用——各种间距设置
UICollectionView的使用——各种间距设置1. 定义section每个Cell的大小-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{ CGSize size = CGSizeMake(80,100); re
2021-01-13 15:25:32
2409
转载 1、UICollectionView的使用
UICollectionView的使用http://www.cocoachina.com/articles/15248
2021-01-13 11:52:12
123
转载 UITableView——UITableViewCell使用详解
UITableViewCell使用详解https://www.cnblogs.com/zhonghuaxiaodangjia/p/4585150.html
2021-01-11 16:38:20
176
原创 iOS——UIColor中使用16进制 和 RGB格式选取颜色
iOS中的UIColor选取颜色1. 使用16进制格式预先定义:#define UIColorFromHex(s)[UIColor colorWithRed:(((s & 0xFF0000) >> 16))/255.0 green:(((s & 0xFF00) >> 8))/255.0 blue:((s & 0xFF))/255.0 alpha:1.0]使用方法:view.backgroundColor = UIColorFromHex(0xdc
2021-01-11 14:10:57
556
转载 UITableView——的tableHeaderView 和 代理中viewForHeaderInSection的区别
iOS开发tableView的tableHeaderView和代理中viewForHeaderInSection的区别混淆的概念tableView.tableHeaderView(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section以上两种方式创建headerView是不一样的:tableHeaderView是整个tableView的headerView代理创建的是每个se
2021-01-11 11:58:46
598
转载 1、UITableView的使用
UITableView的基本使用方法https://www.cnblogs.com/frosting/p/9846551.htmlUITableView数据的展示通过Delegate和DataSource来配置(这个很重要!!!)UITableView的类型 plain(无间隔)和grouped(段之间有间隔)类型创建TableView @interface ViewController ()<UITableViewDelegate,UITableViewDataSource>
2021-01-11 10:05:38
705
转载 Mac运行Cornerstone 4.1提示“Cornerstone”已损坏,无法打开
https://blog.youkuaiyun.com/qq_36071963/article/details/106609177
2021-01-07 14:12:47
537
转载 oc-@property的属性关键字(@property 的参数)
oc-@property的属性关键字(@property 的参数)https://blog.youkuaiyun.com/qq_41856760/article/details/81233835
2021-01-05 16:27:32
198
转载 swift-CoreData的介绍和使用
CoreData的介绍和使用https://www.jianshu.com/p/ae9bf0b9ce3d
2021-01-05 16:22:01
475
转载 Mac——打开时崩溃签署工具CodeSigner
打开时崩溃签署工具CodeSignerhttps://www.macenjoy.co/blog/codesigner
2021-01-05 10:07:49
6788
转载 self = [super init];
self = [super init]; if(self = [super init]){ //为子类增加属性进行初始化// equivalent to "self does not equal nil" } return self;1. [super init]的作用:面向对象的体现,先利用父类的init方法为子类实例的父类部分属性初始化。2. self 为什么要赋值为[super init]:简单来说是为了防止父类的初始化方法release掉了self指向的空
2021-01-04 17:45:28
194
原创 js中test()和match()正则函数
作用:用于检测一个字符串是否匹配某个模式match()方法match是String的方法,参数是正则表达式,返回值是数组,没有找到时返回的是null。stringObj.match(regExp)stringObj是必选项,对其进行查找的string对象或字符串文字;regExp是必选项,为包含正则表达式模式和可用标志的正则表达式对象。使用方法: var reg = /^([0-9]{1,4}).*\D$/g; var str1 = 'aa';
2020-10-03 23:32:31
1409
原创 js中的valueOf和toString函数
js中的valueOf和toString函数valueOf和toSring两个函数 是number、string、boolean、object、symbol原型链上共有的函数(null和undefined两种数据类型没有)这两个函数主要是用来干什么的呢?答案是:值运算和显示问题,一般在隐式类型转换时会自动调用。对number、string、boolean、object、symbol数据类型调用valueOf方法,得到的都是数据本身。(null、undefined两种类型的原型上没有valueOf
2020-10-03 21:40:28
510
空空如也
macOS高版本如何单用户模式启动
2022-03-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人