iOS
文章平均质量分 81
Dev_Meng
快乐的生活,快乐的coding,愿一切安好!
展开
-
error: Error Domain=NSURLErrorDomain Code=-1002
一个NSURLSessionRequest 的报错:error: Error Domain=NSURLErrorDomain Code=-1002 "unsupported URL" UserInfo={NSUnderlyingError=0x170248190 {Error Domain=kCFErrorDomainCFNetwork Code=-1002 "(null)"},很有意思,原创 2017-09-14 09:55:48 · 4671 阅读 · 0 评论 -
iOS 面试题(3)
1.KVO实现原理?2.说说你理解的埋点?3.消息转发机制原理?4.说说你理解weak属性?5.假如Controller太臃肿,如何优化?6.项目中网络层如何做安全处理?7.main()之前的过程有哪些?1.KVO实现原理?KVO在Apple中的API文档如下: Automatic key-value observing is implemented using a technique calle...转载 2018-03-09 09:58:37 · 747 阅读 · 0 评论 -
好的文章记录
https://segmentfault.com/a/1190000007769327原创 2018-03-09 10:03:26 · 105 阅读 · 0 评论 -
iOS 面试题链接
《招聘一个靠谱的iOS》面试题参考答案(上) https://www.jianshu.com/p/31c4bf116837?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendationhttps://www.jianshu.com/p/92286ab34611转载 2018-03-09 10:14:43 · 111 阅读 · 0 评论 -
字符串处理方法
//获取字符串中多个相同字符的位置index//解决方法:先遍历AString 找到所有的abc 所在位置的index,然后通过index 将字符串进行替换- (NSMutableArray*)getRangeStr:(NSString*)text findText:(NSString*)findText { NSMutableArray * arrayRanges = [NSMut...原创 2018-03-09 11:32:03 · 176 阅读 · 0 评论 -
CoreAnimation iOS 动画学习
当然也是站在别人的肩膀上学习,并进行了一些补充参考:http://www.cocoachina.com/ios/20170124/18617.html类的继承关系 如下: 一 、基础动画CABasicAnimation 动画的属性属性的详细解释repeatCount : 如果在swift中需要一直不断重复:Float.infinity,OC:HUGE_VALF,默认是0,需要手动赋值ti...原创 2018-01-25 13:48:58 · 288 阅读 · 0 评论 -
Alamofire 视频或图片上传 或普通上传封装
Alamofire 这个第三方不解释了,就是好。我上来就想贴我的代码~~ 上车 普通的get 或post 上传需要put 或其它的可以继续往枚举里添加:如果需求可能变更最好再封装一层,修改起来就比较灵活了,再给个默认值,爽~ func requstData(_ type: MethodType, urlString : String, ...原创 2018-02-23 12:05:50 · 1266 阅读 · 0 评论 -
iOS 绘制PDF
1 -(void)createPdf:(UIImage *)img andText:(NSString *)text{ 2 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 3 NSString *saveDirectory = [pa...转载 2018-03-02 17:04:25 · 667 阅读 · 0 评论 -
iOS 状态栏颜色属性修改总结
感觉有时候修改状态栏的需求挺多的,今天总结一下:iOS 状态栏就是手机最上面显示电池时间等部分,如下图,状态栏背景部分比较容易设置,我们可以通过设置导航栏的背景色或背景图片或者控制视图的背景色来设置 即 navigationBar的tintColor ,但是如果设置了setBackgroundImage(<#T##backgroundImage: UIImage?##UIImage?#>...原创 2018-02-23 11:23:52 · 2794 阅读 · 0 评论 -
iOS 面试题(4)
阿里p5,二面 (答案为参考)1、怎样判断某个cell 是否显示在屏幕上 NSArray * visibleCells = [self.tableView visibleCells]; if ([visibleCells containsObject:cell]) { //cell 在当前屏幕上 }2、进程与线程的区别(1)进程是资源分配和调度的一个独立单元,而线...原创 2018-03-12 13:54:24 · 991 阅读 · 0 评论 -
iOS 面试题(1)
整理一下面试题:阿里p51.MVC具有什么样的优势,各个模块之间怎么通信,比如点击 Button 后 怎么通知 Model? 参考答案:MVC 是一种设计思想,一种框架模式,是一种把应用中的所有类组织起来的策略,它把你的程序分为三块,分别是:M : 实际上考虑的是“什么”问题,你的程序本质上是什么,独立于UI工作,是程序重处理应用程序逻辑的部分,通常负责存取数据。C: 控制你的Model 如何呈...原创 2018-03-05 16:35:28 · 444 阅读 · 0 评论 -
iOS 面试题(2)
1.编译过程做了哪些事情?C++,Objective C 都是编译语言,编译语言在执行的时候,必须先通过编译器生成机器码,机器码可以直接在CPU上执行,所以执行效率很高。OC 编译依赖于Clang + LLVM iOS 编译不管是OC 还是swift,都是采用Clang 作为编译器的前端,LLVM 作为编译器的后端。所以简单的编译过程 CLang->LLVM Optimizer -> ...转载 2018-03-06 17:53:50 · 231 阅读 · 0 评论 -
CADisplayLink
什么是 CADisplaylink?对于什么是 CADisplaylink. 我们先来看看苹果官方文档中的描述:A CADisplayLink object is a timer object that allows your application to synchronize its drawing to the refresh rate of the display.从中可以看出,...转载 2018-01-29 09:20:17 · 367 阅读 · 0 评论 -
粒子发射器 CAEmitterLayer and CAEmitterCell
一、属性及含义1、CAEmitterLayer: 粒子发射器birthRate: 每秒发射粒子的数量emitterShape: 按什么样式发射 /** `emitterShape' values. **///发射源是一个点@available(iOS 5.0, *)public let kCAEmitterLayerPoint: String//发射源是原创 2018-01-26 15:14:37 · 269 阅读 · 0 评论 -
xcode 自带的UITests
学了还是应该多用或者多复习,不然会忘,写的不错,mark 下!一听到单元测试这个词感觉很高端,其实单元测试就是为你的方法多专门写一个测试函数。以保证你的方法在不停的修改开发中。保持正确。如果出错,第一时间让你知道,这样从最小单位开始监控来保证软件的质量。什么时候用到单元测试:1、写完代码以后:想要验证一下自己写的代码是否有问题。2、写代码之前:就是写代码之前所有的功能分模块的设转载 2018-01-23 10:11:31 · 581 阅读 · 0 评论 -
iOS 手机震动
今天提到一个需求,震动提示,很简单: class func vibrate() { AudioServicesPlaySystemSound(kSystemSoundID_Vibrate) }原创 2017-09-14 18:25:51 · 674 阅读 · 0 评论 -
Application Loader 上传报错ITMS-90087,ITMS-90209,ITMS-90125,解决方法
如果出现以下错误,则说明自建的这个SDK里面包含了x86_64, i386 架构,当然这个AppStore是不允许的,所有会在上传的时候报错,解决办法就是要这个SDK剔除掉x86_64, i386这两个架构ERROR ITMS-90087: "Unsupported Architectures. The executable for ***.app/Frameworks/SDK转载 2017-10-13 13:44:19 · 886 阅读 · 0 评论 -
iOS 构建版本失效
上传ipa 文件到appstore 后 一直无法添加新上传的构建版本。这时候需要在iTunes “活动选项中”查看版本情况,显示正常,这时候就可以正常添加上传,如果右边显示红色并提示,构建版本失效,这时候查看邮件吧,邮件会说的很清楚,1、私有权限没打开Dear developer,We have discovered one or more issues with原创 2017-10-13 16:54:03 · 1687 阅读 · 0 评论 -
iOS Crash文件分析
上传一软件,被拒了,自己测试了n遍都未出现这个情况,今天用symbolicatecrash工具分析了一下苹果提供的Crash文件,最终查到是- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation这里出问题,在第一次进入更新位置的时候,userLocation.co转载 2017-10-25 18:07:14 · 244 阅读 · 0 评论 -
多线程(三)
本来想写在上个多线程(二)呢,无奈GCD内容太多,暂时先写那么多NSOperation NSOperation 是对GCD的封装,面向对象NSOperation-> {GCD},NSOperationQueue-> dispatch_queue ,由于NSOperation是抽象类,其实现的两种方式: Selector 和 block 执行任务分别对应 NSInvocationOperation原创 2017-11-22 15:33:37 · 257 阅读 · 0 评论 -
多线程(二)
GCD(Grand Central Dispatch)是苹果为多核的并行运算提出的解决方案,所以会自动合理的利用更多的cpu内核(双核,四核),它自动管理线程的声明周期(创建线程,调度线程,销毁线程)。 同步执行: 阻塞线程并等待block 中的任务执行完毕,然后当前线程才会继续往下进行 异步执行: 当前线程会继续执行下去,不会阻塞线程 串行队列: FIFO,放到串行队列里的原创 2017-11-22 15:15:57 · 260 阅读 · 0 评论 -
线程锁
一般发生于两个线程同时去访问一个方法或变量时,去进行操作变量,就可能会产生线程的崩溃 解决办法是,在A线程去操作的时候进行加锁,另一个线程无法访问,只有等待A执行完之后进行解锁,B线程才可以进行操作 不要将过多的代码放在锁里,否则一个线程执行的时候另一个线程就一直等待,无法发挥多线程的作用了首先声明一个可变数组属性@property(nonatomic,strong原创 2017-11-22 16:21:55 · 185 阅读 · 0 评论 -
多线程(一)
前些天复习了下多线程,一直忙于项目,今天抽空整理下,以后可以看:PThread没有过多深究,在项目中几乎不用,可能研究过还是很快会忘记,我觉得知道大概就可以了,用到时再研究: POSIX线程(POSIX threads),简称Pthreads,是线程的POSIX标准。该标准定义了创建和操纵线程的一整套API。在类Unix操作系统(Unix、Linux、Mac OS X等)中,都使用Pthread原创 2017-11-22 14:08:26 · 307 阅读 · 0 评论 -
runloop
oc中报错经常看到最多的除了栈地址和运行时就属runloop 最多了,先说说自己现在的理解(白话文):我们平时一个线程执行完任务就会这个线程就会销毁,或被系统调配去干别的事情了。重新开启线程很耗性能的。那么如何让这个线程一直停留,有事情的时候处理事情没事情的时候休眠,并可随时唤醒这个线程。线程和runloop 应该是一样对应的,系统中,线程和runloop是保存在字典中的,我们可以通过线程这个key原创 2017-11-22 17:42:39 · 321 阅读 · 1 评论 -
runtime
runtime - 运行时机制,程序在运行过程中都会转换成runtime的代码执行,我们调用某个方法就向某个对象发消息。比如我们的alloc 方法可以翻译成 objc_msgSend(target,@selector(alloc)) 。同理,[self method]; => objc_sendmsg(self,@selector(method),arg1,arg2,….);消息机制在ru...原创 2017-12-05 19:34:44 · 208 阅读 · 0 评论 -
iOS应用设计模式开发中职责链(责任链)模式的实现解析
定义为了避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止,职责链模式又称为责任链模式,它是一种对象行为型模式。(如果你接触过异常处理,那么套用异常处理机制可以更好地理解)。职责链可以是一条直线,也可以是一个环,还可以是一个树形结构,不过最常见的职责链是直线型,即沿着一条单向的链来传递请求。链上的每一个对象都是转载 2017-12-25 09:58:23 · 375 阅读 · 0 评论 -
解决返回按钮自定义图片向下偏移的问题
关于自定义导航栏返回按钮的方法有很多,随意一搜都很多,我用的是导航条的这两个属性。 /* The back indicator image is shown beside the back button. The back indicator transition mask image is used as a mask for content during push原创 2018-01-12 09:12:58 · 761 阅读 · 0 评论 -
图片或文件上传md5校验(php+iOS)
为了保证上传图片或文件的完整性,通常客户端和服务端会对图片进行md5校验:iOS 端://MARK:大文件的MD5加密-(NSString*)fileMD5:(NSString*)path{ NSFileHandle *handle = [NSFileHandle fileHandleForReadingAtPath:path]; if( handle== nil ) re...原创 2018-08-10 11:31:18 · 4002 阅读 · 0 评论