选中TARGETS下的工程,点击上方的Editor,选择Add Target创建一个Aggregate. 2.选择Other下的Aggregate,点击Next创建。 3.嵌...
![240](https://upload.jianshu.io/users/upload_avatars/9688234/af80c9cb-b4de-48ff-bc77-70eb5caf7db4.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
选中TARGETS下的工程,点击上方的Editor,选择Add Target创建一个Aggregate. 2.选择Other下的Aggregate,点击Next创建。 3.嵌...
假设现在有一个需求, 如果一个自定义cell中有一个button, button的点击事件要将自定义cell中的某个属性值传给控制器, 应该怎么做? 当然你可以利用代理, 通...
一定要增加对timer的引用,不然出了setTimer()方法之后,timer就被释放了,失去了定时效果。
UIScrollView滚动时,Timer不失效的方法1、改变当前RunLoop的mode 2、在主线程中定义Timer 3、在子线程中定义Timer
最常用的设置圆角的方法: 但是masksToBounds这个属性会造成离屏渲染,这个属性才是帧数下降的罪魁祸首。 如果想简便的话可以设置 这个属性可以为圆角设置缓存,但是设置...
不自动锁屏 [UIApplication sharedApplication].idleTimerDisabled=YES 自动锁屏 [UIApplication share...
KVO原理及自定义KVO KVO原理我们注册监听的时候,会对注册者动态的创建一个子类对象,然后底层找方法的的isa指针就变成指向新创建的子类对象。当改变注册对象某个属性的时候...
判断全汉字:"[\u4e00-\u9fa5]+" 判断全数字:"[0-9]*" 判断全字母:"[a-zA-Z]*" 判断仅输入字母或数字:"[a-zA-Z0-9]*" 判断是...
首先先解释一下打包后的四种导出方式:- Save for iOS App Store Deployment保存到本地 准备上传App Store 或者在越狱的iOS设备上使用...
我们可以为UIButton建立一个Category,然后利用runtime的绑定属性,来扩大响应区域。先看一下.h文件里的,只声明了一个函数。使用的时候直接利用这个函数扩大四...
首先声明要使用到的URL scheme,这一步必须做,在info->URL Types增加一种prefs,这里的prefs代表系统的设置,如果不添加这个,是无论如何也跳不过去...
很多地方都会用到获取当前App的版本号。 获取bundle Id信息: 获取版本号: 获取build号: 获取App显示名: 其实 [[NSBundle mainBundle...
超前一个版本,落后N个版本 首先打开终端, 然后输入(非常不建议使用):$ git reset --hard HEAD^这句话的意思是将自己最近的一次提交撤销,回到push之...
关于Xcode的单元测试,有些方法你是必须知道的。 XCTFail(format…) 生成一个失败的测试; XCTAssertNil(a1, format…)为空判断,a1为...
关于iOS11及iPhoneX的适配在网上看了很多文章,在此整理记录一下自己在实际项目中用到的。 导航栏 1. 导航栏高度的变化 iOS11之前导航栏默认高度为64pt(这里...
先来介绍几个主要属性 UIViewController 的 edgesForExtendedLayout UIViewController 的 extendedLayoutI...
在开发过程中遇到了这么一个问题,有些人喜欢用class func来写静态方法,有些人则喜欢用static func来写静态方法。其实从翻译的角度来说,static func叫...