iOS
路飞说了
这个作者很懒,什么都没留下…
展开
-
IOS多线程之NSoperation和GCD的比较
GCD是基于c的底层api,NSOperation属于object-c类。iOS首先引入的是NSOperation,IOS4之后引入了GCD和NSOperationQueue并且其内部是用gcd实现的。相对于GCD:1,NSOperation拥有更多的函数可用,具体查看api。2,在NSOperationQueue中,可以建立各个NSOperation之间的依赖关系。3,有kvo,可以监测...转载 2018-11-09 14:59:03 · 375 阅读 · 0 评论 -
Swift中KVC的使用
在Swift中使用KVC分为3中情况:1、在swift3.0之前,类必须要继承自NSObject,因为KVC是OC的东西2、在Swift4.0之后,类必须要继承自NSObject,同时还需要在属性前面加上@objc在Swift4.0之前,编译器会默认帮我们在对象属性前面加上@objc在Swift里,有一种间接访问类属性的方法,叫做#keyPathclass Person : NSObje...转载 2019-01-23 11:29:22 · 2613 阅读 · 0 评论 -
Swift中url的处理
OC: NSString* encodedString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; Swift: let encodedString = urlString.addingPercentEscapes(using: .utf8)此方...原创 2019-01-18 17:52:31 · 2085 阅读 · 0 评论 -
Swift中final、extension、override、@objc等关键字的使用
1. finalfinal关键字在大多数的编程语言中都存在,表示不允许对其修饰的内容进行继承或者重新操作。Swift中,final关键字可以在class、func和var前修饰。1.1 final正确的使用场景 - 权限控制也就是说这个类或方法不希望被继承和重写,具体情况如下:(1)类或者方法的功能确实已经完备了这种通常是一些辅助性质的工具类或者方法,特别那种只包含类方法而没有实例方法...原创 2019-01-17 18:52:10 · 2810 阅读 · 0 评论 -
设置请求超时时间(timeoutInterval)不起作用
方法一:解决办法:AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];manager.responseSerializer = [AFHTTPResponseSerializer serializer];// 设置超时时间[manager.requestSerializer willChangeValue...原创 2019-01-10 14:59:05 · 10153 阅读 · 0 评论 -
使用UIWebView中遇到的问题
###1、webView中使用H5微信支付在webView中使用H5微信支付跳转到微信收银台页面时,点击取消或者支付完成按钮,都会跳转到Safari浏览器,而不会如安卓一样跳回app,除非app使用微信支付SDK。若坚持要使用H5微信支付,可以在APP中设置URL Schemes ,通过在浏览器中打开URL Schemes链接来让浏览器弹出跳回app的弹框。URL Schemes链接如:t...原创 2018-11-12 11:00:26 · 178 阅读 · 0 评论 -
iOS开发,如何将照片保存到相册
引用自:http://www.cocoachina.com/ios/20170629/19676.html在使用前 请导入photos.framework方法一使用UIImageWriteToSavedPhotosAlbum函数将图片保存到相册,如:(void)loadImageFinished:(UIImage *)image{UIImageWriteToSavedPhotos...转载 2018-11-12 11:01:22 · 312 阅读 · 0 评论 -
CocoaPods导入第三方库,提示找不到头文件的解决方法
CocoaPods导入ReactiveCocoa框架后,却出现一个问题,就是引入头文件的时候说找不到头文件,如下图解决方法如下:1,找到TARGETS -> Build Settings -> SearchPaths -> User Header Search Paths 在后面的空白处双击2, 点击 ‘+’号,添加一个新的键为${SRCROOT},值设置为recur...转载 2018-11-12 11:01:54 · 1181 阅读 · 0 评论 -
详细整理:UITableView优化技巧
最近在微博上看到一个很好的开源项目VVeboTableViewDemo,是关于如何优化UITableView的。加上正好最近也在优化项目中的类似朋友圈功能这块,思考了很多关于UITableView的优化技巧,相信这块是难点也是痛点,所以决定详细的整理下我对优化UITableView的理解。UITableView作为iOS开发中最重要的控件之一,其中的实现原理很是考究。Apple在这块的优化水平直...转载 2018-11-12 11:02:11 · 155 阅读 · 0 评论 -
iOS常见问题
一,libxml/HTMLparser.h file not find第一种方法:点击左边项目的根目录,再点击右边的Build Settings,手工输入文字:“Header search paths”,然后单击(或双击,点击弹出面板下面的“+”号进行添加)“Header search paths ”右边的空白处,输入:/usr/include/libxml2第二种方法:点击左边项目的根...转载 2018-11-12 11:01:37 · 3430 阅读 · 0 评论 -
H5与原生交互的坑
视频播放1.使用H5进行视频播放且自动使用系统播放器,在全屏变为小屏,并返回上个界面的时候,出现视频声音没有关闭的情况。解决办法:让webview调用一个 about:blank的url。就可以停止视频播放。-(void) viewDidDisappear:(BOOL)animated{NSLog(@“媒体打开窗口被隐藏”);[webViewer loadRequest:[NSUR...原创 2018-11-12 11:01:09 · 764 阅读 · 0 评论 -
AVPlayer那些坑
AVPlayer是iOS上常用的视频播放器组件,支持常见的音视频格式。对于一般应用而言,使用AVPlayer和一套自定义UI基本可以满足需求。目前手Q、微信(公众号)、腾讯视频、新浪微博等app都在广泛使用AVPlayer。Qzone一直以来也是使用AVPlayer进行视频播放,加上http代理和自定义下载,并封装了对分片mp4的支持,以及相应的预下载和流控策略,每天为超过2千万用户提供近3亿次...转载 2018-11-09 15:20:16 · 4834 阅读 · 0 评论 -
iOS私有Api检测
最近提交APP审核, 一直都说是使用了私有API在网上找了一些检测私有API的方法才发现在SDK里面涉及到了下面就检测私有API的方法简单介绍一下###指定私有API这是最显而易见的, 也是最方便解决的可能出现私有API的情况当然这种方法首先你要知道使用了那些私有API, 然后在代码中进行全局搜索, 修改, 此方法暂不赘述这些方法, 我在查找的时候基本能定位到使用私有api的第三方库...转载 2018-11-09 15:18:44 · 334 阅读 · 0 评论 -
OC与JS交互之JavaScriptCore
JavaScriptCore初探在iOS7之前,原生应用和Web应用之间很难通信。如果你想在iOS设备上渲染HTML或者运行JavaScript,你不得不使用UIWebView。iOS7引入了JavaScriptCore,功能更强大,使用更简单。###JavaScriptCore介绍JavaScriptCore是封装了JavaScript和Objective-C桥接的Objective-C ...转载 2018-11-09 15:17:41 · 241 阅读 · 0 评论 -
解决 安装cocoapods失败,提示 requires Ruby version >=2.2.2
补充:已经安装的是淘宝ruby镜像https://ruby.taobao.org/具体配置cocoapods的步骤不说了,这里说一下这个问题吧,显然是ruby版本太低,要求 2.2.2以上解决它吧,去把ruby版本号搞成>=2.2.2:强烈建议 使用rvm安装rubyrvminstallruby-2.21但是,但是竟然报错了,具体我忘记额,但是是权限和brew的问题,那么我又转向...转载 2018-11-09 15:12:59 · 455 阅读 · 0 评论 -
正则表达式
一、校验数字的表达式1数字:^[0-9]*$2n位的数字:^\d{n}$3至少n位的数字:^\d{n,}$4m-n位的数字:^\d{m,n}$5零和非零开头的数字:^(0|[1-9][0-9]*)$6非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$8正数、负数、和小...转载 2018-11-09 15:09:36 · 288 阅读 · 0 评论 -
沙盒中存取删数据
存储数据-(void)SaveString:(NSString*)UrlStr{// 1.获得沙盒根路径NSString*home =NSHomeDirectory();// 2.document路径NSString*docPath = [homestringByAppendingPathComponent:@"Documents"];NSArray*data =@[Ur...原创 2018-11-09 15:01:14 · 121 阅读 · 0 评论 -
Swift中常用的开发库
1、CryptoSwiftswift加密库, 支持md5,sha1,sha224,sha256…github地址: https://github.com/krzyzanowskim/CryptoSwift2、KingfisherKingfisher 是一个异步下载和缓存图片的库 类似于SDWebImage只不过它是纯Swift的实现github地址:https://github.com...转载 2019-02-26 11:26:53 · 322 阅读 · 0 评论