随笔分类 -  iOS

摘要:1、使用 DispatchGroup解决,如下图,我在自己项目中使用真实的网络请求接口实现( 这种是不开启子线程的线程组) 1 func test() { 2 let group = DispatchGroup() 3 group.enter() 4 productListParaDict["sto 阅读全文
posted @ 2020-06-11 17:31 晨光微 阅读(1857) 评论(0) 推荐(0)
摘要:上篇博文里,我运行起来了我在git上下载的一个flutter项目,同事(android开发)这段时间也在研究Flutter,并且他自己写了一个Demo,我寻思着把他的项目拿过来,我看能运行起来否,结果一大堆问题。 下面我列出来了一部分,在我经过半个小时的百度,以及对比git上下载下来的项目里面的配置 阅读全文
posted @ 2019-08-20 16:27 晨光微 阅读(1746) 评论(0) 推荐(0)
摘要:1、OC调用swift 在OC项目中创建一个swift文件时,Xcode会提示 需要创建一个桥接文件,点击确定创建桥接文件,Xcode会自动创建一个桥接文件,名字:工程名-Bridging-Header.h。这个桥接文件就是 swift 调用 OC文件的时候使用的 1)进入TARGETS -> Bu 阅读全文
posted @ 2019-04-18 10:39 晨光微 阅读(886) 评论(0) 推荐(0)
摘要:1、clear 和 clean clear 先把之前的缓存文件夹删除掉,然后新建一个文件夹 clean 先删除过期的文件,然后计算剩余缓存文件的大小 currentSize > maxSize,继续删除,按照它缓存文件创建的时间删除,知道currentSize <= maxSize 2、内存缓存时间 阅读全文
posted @ 2019-04-16 17:01 晨光微 阅读(327) 评论(0) 推荐(0)
摘要:imageNamed 方法 1)后面的参数是icon的名字,图片可以存在项目中,也可以存在Asset中 2)该方法只适合一些中小型的图片读取,而一些比较大的资源图片并不适合用这个方法 3)这个方法加载完图片后会存在Cache里面,当用这个方法加载的时候,会在系统缓存中查找并返回一个对象,如果缓存中没 阅读全文
posted @ 2019-04-16 11:23 晨光微 阅读(262) 评论(0) 推荐(0)
摘要:默认情况下,在block中访问的外部变量是复制过去的。但是可以加上 __block 来让其写操作生效。 原理: Block 不允许修改外部变量的值,这里所说的外部变量的值,指的是栈中指针的内存地址。 __block 所起到的作用就是只要观察到该变量被 block 所持有,就将 外部变量 在栈中的内存 阅读全文
posted @ 2019-04-16 11:03 晨光微 阅读(424) 评论(0) 推荐(0)
摘要:1、在新建项目,引入CocoaPod时,当创建了podfile文件后,执行pod install时报一下错误 2、这是因为 这个第三方不知道用于哪个target,所以必须指定target 解决方案:修改podfile文件,如下图 红色框里的为你的target 名字 3、随后,在执行 pod inst 阅读全文
posted @ 2019-04-04 15:20 晨光微 阅读(304) 评论(0) 推荐(0)
摘要:http://www.360doc.com/content/15/0305/09/20918780_452662561.shtml 阅读全文
posted @ 2015-12-02 23:03 晨光微 阅读(148) 评论(0) 推荐(0)
摘要:http://www.360doc.com/content/15/1127/22/20918780_516394505.shtml 阅读全文
posted @ 2015-12-02 22:50 晨光微 阅读(112) 评论(0) 推荐(0)
摘要:1 在使用的时候会经常出现如下图打印信息,导致请求的数据不能正常显示出来 2 此时找到AFJSONResponseSerializer类,找到箭头标识的位置 3 在下图标识的位置,往集合里面添加 元素"text/html",这样就解决问题了. 阅读全文
posted @ 2015-11-26 21:50 晨光微 阅读(202) 评论(0) 推荐(0)
摘要:一 实现如下效果 二 实现代码 阅读全文
posted @ 2015-11-25 17:57 晨光微 阅读(209) 评论(0) 推荐(0)
摘要:一 Block是什么? 我们使用^运算符来声明一个Block变量,而且在声明完一个Block变量后要像声明普通变量一样,后面要加; 声明Block变量 Block变量的语法 赋值Block变量 使用Block变量 示例代码: 通过以上代码可以得知,Block变量的使用步骤,类似于函数的步骤 首先都要 阅读全文
posted @ 2015-11-25 16:54 晨光微 阅读(310) 评论(0) 推荐(0)
摘要:1 给键盘添加监听事件 2 实现监听方法 阅读全文
posted @ 2015-11-24 23:22 晨光微 阅读(342) 评论(0) 推荐(0)
摘要:AFNetworking的下载地址: https://github.com/AFNetworking/AFNetworking AFNetworking的使用非常简单,创建一个类,调用一个方法就可以达到我们想要的网络请求效果 在项目中需要用到网络请求的类中 #import "AFNetworking 阅读全文
posted @ 2015-11-24 23:05 晨光微 阅读(237) 评论(0) 推荐(0)
摘要:一 示例代码 需要先把第三方Reachability下载导入到工程中 下载网址 https://github.com/tonymillion/Reachability 1 封装网络工具类 NetworkTool 2 在viewController类中导入我们封装好的网络工具类 二 实现效果 阅读全文
posted @ 2015-11-24 16:14 晨光微 阅读(262) 评论(0) 推荐(0)
摘要:一 示例代码 二 实现效果 阅读全文
posted @ 2015-11-24 15:33 晨光微 阅读(201) 评论(0) 推荐(0)
摘要:1 拖进去scrollView 添加约束(0,0,0,0); 2 更新scrollView约束,然后在scrollView上面加个view,设置其约束为(0,0,0,0) 和 水平滑动约束; 此时为下图 此时会报红色,是因为约束没有加够,此时给新添加的view命名为”RedView”(方便观看而已) 阅读全文
posted @ 2015-11-24 14:57 晨光微 阅读(727) 评论(0) 推荐(0)
摘要:一 transform属性 在OC中,通过transform属性可以修改对象的平移,比例和旋转角度 常用的创建transform结构体的方法分两大类 (1) 创建"基于控件初始位置"的形变 CGAffineTransformMakeTranslation (平移) CGAffineTransform 阅读全文
posted @ 2015-11-24 14:34 晨光微 阅读(552) 评论(0) 推荐(0)
摘要:一 核心API Class: UITableView Delegate: UITableViewDataSource, UITableViewDelegate 涉及到的API: 二 功能实现 (1) 让TableView进入编辑状态 (2) 指定那些行cell可以进行编辑 (3) 指定cell的编辑 阅读全文
posted @ 2015-11-24 12:25 晨光微 阅读(213) 评论(0) 推荐(0)