iOS
临海听风V
千里之行,始于足下。
个人网站:www.samuelandkevin.cn
github:https://github.com/samuelandkevin
展开
-
iOS-Charts柱状图常用特性
【代码】iOS-Charts柱状图常用特性。原创 2022-12-18 18:26:17 · 823 阅读 · 1 评论 -
iOS-通过preferredStatusBarStyle控制电池栏颜色
其中A是带UINavigationController的一个控制器;B是present出来的一个控制器,坑爹的来了,C又是B push出来的带UINavigationController的一个控制器;而且中间B是overCurrentContext类型的。A、B的状态栏需要是白色的,C是需要黑色的。在info.plist文件添加"View controller-based status bar appearance", 值YES。原创 2022-09-29 10:28:03 · 899 阅读 · 0 评论 -
iOS 组件化-发布组件到远程仓库
最近项目需要组件化,公共组件要推到远程仓库。因为涉及组件是否开源问题,以下发布组件方式会区分私有或者公有仓库推送。原创 2022-09-12 21:14:04 · 838 阅读 · 0 评论 -
iOS-静态库framework创建教程
iOS 创建静态库framework教程原创 2022-08-20 10:33:45 · 1112 阅读 · 0 评论 -
CocoaPods安装指定版本、卸载
前提:安装位置:/usr/local/bincocoapods安装:sudo gem install -n /usr/local/bin cocoapodscocoapods安装指定版本:sudo gem install -n /usr/local/bin cocoapods -v 1.10.0cocoapods移除:sudo gem uninstall -n /usr/local/bin cocoapods cocoapods-core cocoapods-deintegrate coc原创 2021-06-13 08:07:43 · 1623 阅读 · 0 评论 -
iOS-CoreData 中date对象数据在数据库的显示
前提条件:使用CoreData问题出现:在iOS开发过程中,假如使用到CoreData,保存时间的对象又用到date对象,当我们查看数据库的时候,发现date对应的秒数不是时间戳,怎么转换也转换不了正确的时间。原因:Core Data的date对象存的时间对象是使用timeIntervalSinceReferenceDate (相对与2001年1月1日)的时间对象解决方法:计算timeIntervalSince1970 与1970年1月1日相差的秒数通过计算得出:timeIntervalSince1原创 2020-12-06 14:48:38 · 454 阅读 · 0 评论 -
iOS-国际化脚本工具
准备条件1.准备环境,python、MacOS2.安装xlrd1.0 官方网址:http://pypi.python.org/pypi/xlrd3.demo,请求参看我的github https://github.com/samuelandkevin/iOS-LocalizeScript操作步骤(1)切换到iOS-LocalizeScript目录下(2)运行脚本:python run.py excel.xlsx(3)运行结果如下:(localize是自动生成的文件夹)其他说明exce原创 2020-10-25 14:04:07 · 1647 阅读 · 0 评论 -
iOS-Swift无限轮播图
import Foundationprotocol EHWelcomeScrollViewDelegate: class { /// 点击第几个 func scrollView(_ scrollView:EHWelcomeScrollView,didSelectIndex:Int) /// 显示下一个 func displayNext(_scrollView:EHWelcomeScrollView) }class EHWelcomeScrollView :原创 2020-06-25 09:05:32 · 478 阅读 · 0 评论 -
iOS-Storyboard入门指南
1 、在工程中创建一个storyboard文件,比如我现在"Authorization.storyboard”这个文件。然后我们可以在storyboard可视化视图中创建多个viewcontroller,navigationcontroller或者Storyboard Reference。如果storyboard中存在比较多VC,关键要找到入口,Storybord Entry Point。举...原创 2020-04-05 12:18:21 · 2322 阅读 · 0 评论 -
iOS-CoreData使用
1.创建文件1-1.新建可视化的dataModel新建文件 -> core data -> Data Model -> .xcdatamodeld (格式)在.xcdatamodeld可视化界面,Add Entity 创建实体。实体,就是跟数据库进行映射的对象。NSManagedObject — 对应数据库中的一条记录。2-2.新建NSManagedObject选...原创 2020-03-28 18:33:40 · 811 阅读 · 0 评论 -
iOS-cocoapods安装、卸载
查看CocoaPods组件安装位置which pod手动移除这个组件sudo rm -rf /usr/bin/pod查看gems中本地程序包gem list安装指定版本sudo gem install -n /usr/local/bin cocoapods -v 1.8.4移除指定版本sudo gem uninstall cocoapods -v 1.9.1参考资料...原创 2020-03-21 12:07:16 · 1347 阅读 · 0 评论 -
iOS-Jenkins常用操作命令
查找jenkins war地址在安装后有可能找不到war包地址,可以用mdfind命令本地查询下mdfind -name jenkins.war/usr/local/Cellar/jenkins/2.116/libexec/jenkins.warjenkins重新安装brew reinstall jenkins常用操作访问:http://localhost:8080/login...原创 2020-03-19 09:40:18 · 380 阅读 · 0 评论 -
iOS-单元测试
iOS进阶之单元测试-视频概念逻辑错误,通过断言XCTAssertEqualTDD,测试驱动开发shift+Command+0(开发者文档)调用顺序:+(void)setUp;-(void)setUp;//把杯子里面的水倒干净,重新进行测试。-(void)testExample;-(void)tearDown;-(void)setUp;-(void)testPerforman...原创 2020-03-18 16:28:55 · 284 阅读 · 0 评论 -
iOS-App Logo和闪屏图尺寸
App Logo20×20pt2x40×40px20×20pt3x60×60px29×29pt2x58×58px29×29pt3x87×87px40×40pt2x80×80px40×40pt3x120×120px60×60pt2x120×120px60×60pt3x180×180px1024×1024pt...原创 2020-03-03 17:10:20 · 1339 阅读 · 0 评论 -
iOS- load和initialize 子类,分类,父类,以及同名方法的调用顺序
+ (void)load1.+load方法加载顺序:父类> 子类> 分类 (load方法都会加载)注意:(如果分类中有A,B,顺序要看A,B加入工程中顺序) ,可能结果:( 父类> 子类> 分类A> 分类B ) 或者( 父类> 子类> 分类B> 分类A )2.+load方法不会被覆盖(比如有父类,子类,分类A,分类B,这四个load方法都会...原创 2020-02-19 18:34:30 · 3070 阅读 · 0 评论 -
iOS-SDWebImage实现原理
1、入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWebImageManager 根据 URL 开始处理图片。2、进入 SDWebImageManager-downloadWithURL:delegate:options:userInfo:,交给 SDImageCache 从缓存查找图片是否已经...原创 2020-02-19 10:35:55 · 407 阅读 · 0 评论 -
iOS- Mac基于Appium DeskTop的iOS自动化测试环境搭建
1.下载Appium-mac-1.15.1.dmg(本文是用到这版本),链接地址:https://github.com/appium/appium-desktop/releases下载依赖包 brew install carthage brew install node brew install npm npm install -g cnpm --registry=https://reg...原创 2020-02-19 10:03:55 · 805 阅读 · 0 评论 -
HTTP与HTTPS
(1)非对称加密算法理解?私钥加密后的密文,只要是公钥,都可以解密,但是公钥加密后的密文,只有私钥可以解密。私钥只有一个人有,而公钥可以发给所有的人。虽然服务器端向A、B客户端的方向还是不安全的,但是至少A、B客户端向服务器端方向是安全的。如果只使用同样的加密算法,相当于无用。(2)为啥要协商?因为一个服务器和多个客户端需要不同的对称加密算法。HTTPS同时需要对称和非对称加密算法服务...原创 2020-02-15 11:12:58 · 338 阅读 · 0 评论 -
iOS笔记-runtime objc_msgSend
runtime是怎么发消息的?原创 2016-03-24 22:02:27 · 430 阅读 · 0 评论 -
ios笔记-runtime Method详解
Runtime Method 介绍:Method类型是一个objc_method结构体指针,objc_method有三个成员typedef struct objc_method Method;struct objc_method{SEL method_name; //方法的名称char *method_typesE;//参数和返回类型的描述字串IMP method_imp;原创 2016-03-25 13:24:02 · 1672 阅读 · 0 评论 -
iOS二维码生成中间带图片Logo
iOS二维码生成中间带图片Logo原创 2016-04-18 16:05:29 · 5998 阅读 · 0 评论 -
iOS-runtime+归档保存App数据
iOS-runtime+归档保存App数据原创 2016-11-07 13:49:17 · 963 阅读 · 0 评论 -
FMDB离线缓存
FMDB离线缓存转载 2016-11-01 17:26:17 · 750 阅读 · 0 评论 -
iOS-FMDB+runtime封装,简单实用,省去复杂的sql语句.
在iOS开发中,为了得到以上SQL语句,如果是手动地添加模型属性,代码就冗余了,也就是增加代码量,可读性差,而且如果改变了模型的某个属性的名称,SQL语句相应的位置要发生改变。增,删,改,查,都要改变。如果是改变了一批属性名,这工作量简直是灾难性啊。那苹果有没有API可以动态的获取属性名,代替这复杂的语句呢?有,那就是runtime。相信大家对runtime已经很熟悉了。如果刚入门runtime,可以阅读标哥的技术博客的runtime专题,在那里帮你快速掌握runtime基本知识。原创 2016-11-07 13:30:35 · 5036 阅读 · 0 评论 -
iOS笔记-(网络编程之网络请求步骤)
/* 一. 网络请求的步骤 1. 确定地址NSURL 2. 建立请求NSURLRequest 3. 建立并启动连接NSURLConnection 4. 通过代理方法处理网络请求 遵守协议: 二. 网络代理方法 1. 接收到服务器的响应,服务器要传数据,客户端做接收准备 2. 接收服务器传输的数据,可能会多次执行 3. 接收数据完成,做后续处理转载 2015-03-11 10:38:10 · 535 阅读 · 0 评论 -
iOS笔记-(Block基础知识和使用)
基础知识:1)block声明,block创建,block调用。//block声明int (^myBlock)(int);//block创建myBlock = ^(int a){int result = a*a;return c;};//block调用myBlock(10);2)声明一个block参数 (void)objectMethod:(int (原创 2015-03-15 21:28:04 · 433 阅读 · 0 评论 -
iOS笔记-(Block的理解)
//1.block变量的声明 //格式:返回值(变量)(参数...) // eg:int(^myBlock)(int,int); //2.block变量的创建 //eg:myBlock = ^(int a,int b){ // return a+b; // }; /***没有使用原创 2015-08-23 11:17:17 · 566 阅读 · 0 评论 -
iOS、mac开源项目及库(转载)
目录UI下拉刷新模糊效果AutoLayout富文本图表表相关隐藏与显示HUD与Toast对话框其他UI动画侧滑与右滑返回手势其他动画网络相关网络连接网络测试图像获取网络聊天网络测试Model其他数据库缓存处理PDF图像浏览及处理摄像照相视频音频处理响应式框架消息相关消息推送客户端消息推送服务器端通知相关版本新API的Demo代码安全与密码测试转载 2015-12-23 12:26:27 · 1289 阅读 · 0 评论 -
iOS笔记-(ASI缓存常用方法总结)
//判断现在是否有网络请求在处理中 [ASIHTTPRequest isNetworkInUse];//当正在请求时,状态栏是否要显示联网状态(转圈圈) [ASIHTTPRequest setShouldUpdateNetworkActivityIndicator:YES]; 一.ASI缓存策略(1)缓存策略:什么时候进行缓存,缓存数据的利用方式原创 2015-07-03 15:42:10 · 1225 阅读 · 0 评论 -
iOS笔记 -(NSDictionary和NSMutableDictionary常用方法总结)
NSLog(@"-------------NSDictionary-------------"); //1.创建字典 NSDictionary *dict1 = [NSDictionary dictionaryWithObjectsAndKeys:@"小明",@"name",@"11",@"number",@(100),@"score",nil]; NSDictionary原创 2015-07-26 14:17:21 · 751 阅读 · 0 评论 -
iOS笔记-(利用EGORefreshTableHeaderView自定义上拉加载和下拉刷新)
GIthub下载一个DEMO,在RootviewController中查看.UIScrollViewDelegate:是监听滑动的距离EGORefreshTableHeaderDelegate:是头部控件的代理方法.//1.下拉到一定距离,手指放开会触发:(void)egoRefreshTableHeaderDidTriggerRefresh:(EGORefreshTableHeader原创 2015-08-02 21:00:57 · 800 阅读 · 0 评论 -
iOS笔记-(缓存机制的理解与实现)
提出缓存概念 在生活中,我们经常谈到手机缓存,有不少朋友问为啥我的手机内存少了那么多,可能有不少热心人士回答你的问题,说手机缓存了好多数据,快点清理一下拉,于是你马上下载手机卫士,360,qq安全管家之类的APP去清理。那么缓存到底是何方神圣呢,它跟PC端的缓存一样吗?于是,小编在网上搜索了不少资料,最后还要感谢MJ老师的指导,此时突发灵感,整理一下笔记,写一下我对缓存的理解。如有错原创 2015-04-25 20:35:25 · 4645 阅读 · 0 评论 -
iOS 取出网页缓存与网页离线缓存
iOS 取出网页缓存与网页离线缓存原创 2016-11-01 11:44:33 · 3375 阅读 · 0 评论 -
iOS笔试面试问题总结
最近,面试几间公司,对一些常见笔试面试问题作一次总结. 1.内存管理,必问.autoreleaspool的作用和理解,怎么知道对象已经释放?对象作用域结束是在什么时候? retain,copy,assign的区别,如果对象的属性@property是数组用retain,是否正确,为什么? 2.谈谈你对runtime的看法 3.你项目中有用到runloop吗原创 2016-03-26 14:32:16 · 445 阅读 · 0 评论 -
iOS笔记-归档和解档
//(1)第一种方式:归档 (缺点:一个对象保存为一个文件) NSArray *arrayArchi = @[@"1",@"2",@"3"]; NSString *pathArchi1 = [NSHomeDirectory() stringByAppendingPathComponent:@"archive1"]; BOOL isOK1 = [NSKeyedArchiver原创 2016-03-20 22:00:47 · 372 阅读 · 0 评论 -
Alamofire网络库基础教程
Alamofire网络库基础教程转载 2016-10-10 11:17:23 · 271 阅读 · 0 评论 -
iOS-音频处理
1.http://hao.jobbole.com/theamazingaudioengine/《TheAmazingAudioEngine:一个iOS音频处理框架》TheAmazingAudioEngine是基于高效低延迟的 Core Audio 远程输入输出系统,由 Audiobus 和 Loopy 的开发者 Michael Tyson 创建的原创 2016-09-29 14:14:18 · 363 阅读 · 0 评论 -
iOS - 使用UIWebView实际开发遇到的问题
1.基于 UIWebView 的富文本编辑器实践 转载出处:http://wereadteam.github.io/2016/09/21/RichEditor/ webview 也会存在光标的控制,css 的冲突处理以及兼容性的问题如何保持光标在可见区域。插入表情的时候 UIWebView 会失焦问题。原生命令会有bug,需要自己处理。样式的兼容性。at以及话题的链接处转载 2016-09-29 13:43:25 · 574 阅读 · 0 评论 -
深入研究Block用weakSelf、strongSelf、@weakify、@strongify解决循环引用
转载出处:http://ios.jobbole.com/88708/1.Retain Circle的由来2.weak、strong的实现原理3.weakSelf、strongSelf的用途4.@weakify、@strongify实现原理转载 2016-09-29 14:18:22 · 671 阅读 · 0 评论 -
在iOS中应用内联函数
在iOS中,使用内联函数和不使用内联函数的区别:1.使用内联函数1-1.引入头文件1-2.在main函数调用1-3.把main函数转成汇编语言展示:2.不使用内联函数2-1.引入头文件2-2.在main函数调用add函数2-3.main函数以汇编形式展示:原创 2016-08-07 20:25:29 · 681 阅读 · 4 评论