自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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

转载 Swift循环遍历集合方法总结

https://www.jianshu.com/p/9fae1a4746bb

2021-03-01 10:41:33 342

转载 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

转载 OC中函数声明前面的‘+’号和‘-’号

对象方法 和 类方法

2021-02-22 09:43:17 242

原创 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

转载 KVO操作和通知(Notification)——KVO操作

https://www.jianshu.com/p/52bfae5d2244

2021-02-05 10:00:35 144

转载 点语法

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

转载 UICollectionView——使用样式

https://www.jianshu.com/p/dd8074c2daf5

2021-01-19 13:57:54 141

转载 Swift present 与 push 跳转

Swift present 与 push 跳转

2021-01-18 10:04:45 511

转载 Swift——手势总结

https://www.jianshu.com/p/6ef6603d035d

2021-01-14 15:56:05 178

转载 UICollectionView——制作粘性的行和列

https://www.jianshu.com/p/a0089f2db49e

2021-01-13 17:06:01 88

原创 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

转载 iOS第三方插件——Masonry详解

Masonry详解https://www.jianshu.com/p/587efafdd2b3

2021-01-11 17:01:16 236

转载 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

转载 2、UITableView的使用

UITableView 详解https://www.jianshu.com/p/aa9721e4484d

2021-01-11 10:08:04 45

转载 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

转载 Notification

Notificationhttps://www.cnblogs.com/yipingios/p/5628224.html

2021-01-04 18:28:25 41

转载 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

转载 泛型01

泛型01https://www.cnblogs.com/SoulKai/p/5945905.html

2021-01-04 17:25:41 54

原创 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

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除