![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
iOS小技巧
ShareCapipai
这个作者很懒,什么都没留下…
展开
-
iOS 在APP端解压tar包
最近遇到一个需求,要在iOS端进行文件下载,文件格式为tar格式,然后通过蓝牙将解压后的文件传到硬件端,进行硬件的升级。其他都还好,就是在解压的时候遇到了问题,google好久发现只有zip的解压。下面就介绍一个tar的解压工具。代码放在了github:https://github.com/mhausherr/Light-Untar-for-iOS)代码基于 BSD 协议,你可以在自己的项目里使用它。使用方法是包含 .h 文件然后利用 NSFileManager 的createFilesAndDire原创 2020-10-15 12:29:21 · 4825 阅读 · 0 评论 -
iOS关于webview使用POST带参数的请求
之前公司要求在一个webview中调用一个后台的接口,请求时需要一些参数。正常情况下请求都是GET请求,但是对于表单提交却要求是POST请求,因此当我们重新创建一个Request来reload请求时,会自动变成GET请求,导致POST参数丢失。解决方法如下: 在NSMutableURLRequest类中提供了两个这样的属性 @property (nullable, readonly, copy)原创 2016-08-19 09:50:28 · 11644 阅读 · 1 评论 -
uitableview组头悬浮问题
在我们用tableview分组的时候有时候会发现组头滑动到顶部的时候会悬浮在视图上方。这时有可能会影响浏览效果。我们可以通过下面的方法使其不用悬浮在顶部而是跟着视图一起滑出可视范围。- - (void)scrollViewDidScroll:(UIScrollView *)scrollView- {- CGFloat sectionHeaderHeight = 40;//组头的高度,根据原创 2016-08-18 18:27:29 · 957 阅读 · 0 评论 -
atomic 和 nonatomic 有什么区别
atomic 和 nonatomic 的区别在于,系统自动生成的 getter/setter 方法不一样。 atomic:变量默认是有该有属性的,这个属性是为了保证在多线程的情况下,编译器会自动生成一些互斥加锁的代码,避免该变量的读写不同步的问题。 nonatomic:如果该对象无需考虑多线程的情况,这个属性会让编译器少生成一些互斥代码,可以提高效率。 atomic 的意思是setter/原创 2017-03-29 17:12:28 · 433 阅读 · 0 评论 -
文章标题
在使用 [self.navigationController popToRootViewControllerAnimated:YES]; 的时候出现了这种情况: 解决这个问题的方法就是:遵循UINavigationController的代理,用代理方法解决该Bug,代码如下: 设置代理:- (void)viewDidLoad{ [super viewDidLoad];原创 2017-06-27 09:50:14 · 176 阅读 · 0 评论 -
iOS 12 从二级页面POP到主页面是tabbar 图片文字下移问题
今天更新了下Xcode 然后去运行了下项目。发现在iPhone X 以上的设备运行时当页面从二级页面pop到首页时tabbar的文字图片会有一个下移的问题,在iPhone X一下的设备运行的时候页面返回时tabbar的图片文字会短暂消失一下然后才会显示。这就很操蛋了。经过一个多消失的调试发现在AppDelegate或者tabbarcontroller中加入[[UITabBar appearance...原创 2018-11-13 14:32:05 · 1781 阅读 · 1 评论 -
GCD 信号量进行多个网络请求
多个网络请求时,其中一个网络请求的参数需要其他接口的返回数据作为参数时可以使用该方法进行网络请求。//crate的value表示,最多几个资源可访问 dispatch_semaphore_t semaphore = dispatch_semaphore_create(1); dispatch_queue_t quene = dispatch_get_...原创 2019-08-07 16:00:31 · 270 阅读 · 0 评论