9 沸腾的泪水05314

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 494

UITableView ReloadData那些坑

转载自:https://www.jianshu.com/p/4ffdd772c864我们在修改TableView的数据后,经常使用下面这句[self.tableView reloadData]; 来更新UI但,其实,这里埋了一个坑,这句代码执行后, 按理说,应该执行numberOfRowsInSection和CellForRow方法,测试结果却是代码立即返回,即,整个过程是异步的.多说一句,毕竟我们是看不到reloadData 执行的源代码发现问题测试代码如下: @..

2020-05-28 15:33:24

iOS如何在UITableView调用reloadData刷新结束后再同步执行后续操作

转载自:https://www.jianshu.com/p/94ed1ec71346注意:我们都知道直接调用[tableView reloadData]时,系统并不会等待tableview更新结束后才执行后续代码,而是立即执行后续代码,然后异步地去计算scrollView的高度,获取cell等等。但是我们又经常需要在tableview刷新结束后同步的执行某些操作,Apple并没有直接提供reloadData结束时的回调api,那么想要程序代码延迟到reloadData结束后再操作,可以通过以下两个方

2020-05-28 15:32:21

关于GCD同步组实现多个异步线程的同步执行中的注意点

转载自:https://cloud.tencent.com/developer/article/1521135在App开发中经常会遇到多个线程同时向服务器取数据, 如果每个线程取得数据后都去刷新UI会造成界面的闪烁也有可能出现部分数据还没有获取完毕造成程序crash之前在网上看到很多是利用dispatch_group_async、dispatch_group_t与dispatch_gr...

2020-05-08 14:11:00

iOS中日本日历、佛教日历取date的问题

转载自:https://blog.csdn.net/nijino_saki/article/details/82421216iOS中支持的日历有三种,分别是:公历,日本日历和佛教日历。在选择日本日历和佛教日历时输出[NSDate date]会出现错误,因为只输出了数字,而忽略了前缀(平成、昭和、明治、佛历等)的原因。为了获得正确的返回日期,可以按如下方法设置NSDateFormatter来解决...

2020-04-24 17:35:41

pod install提示:bad interpreter: No such file or directory信息

转载自:https://www.jianshu.com/p/99aae0af1c6c执行pod install命令后出现了下面提示:-bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file ...

2020-04-23 14:09:48

Swift轮播控件快速入门——FSPagerView

转载自:https://blog.csdn.net/sinat_21886795/article/details/79416068今天介绍一个IOS的轮播控件FSPagerView。FSPagerView是一个优雅的轮播控件,它可以十分轻松有效地制作轮播视图、产品展示、欢迎/指南页面。先上地址——Swift: https://github.com/WenchaoD/FSPage...

2020-04-20 16:56:59

iOS动画暂停和继续

转载自:https://www.jianshu.com/p/44958f81ed1a执行动画过程中暂停和继续上次动画的状态继续执行动画,需要用到layer.speed 和 layer.timeOffset, layer.beginTime.基本做法就是记录暂停时的动画时间,然后继续动画时将开始时间设置为上次暂停的时间。下面是个旋转动画的暂停和继续。-(void)startAnimating...

2020-04-17 10:30:49

iOS UICollectionView动画

转载自:https://www.jianshu.com/p/4f64dbc08ece

2020-03-24 19:18:29

moveRowAtIndexPath 完成动画后处理

NSIndexPath *sourceIndexPath = [_mainTableView indexPathForCell:cell];NSIndexPath *destinationIdexPath = [NSIndexPath indexPathForRow:2 inSection:(2)];[CATransaction b...

2020-03-24 11:52:35

iOS Core Animation 核心动画(上)

转载自:https://www.jianshu.com/p/1ea1a8f2d998一、简介Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍。也就是说,使用少量的代码就可以实现非常强大的功能。Core Animation是跨平台的,可以用在Mac OS X和iOS平台。Core Animation...

2020-03-23 10:44:20

iOS 自动订阅开发

一、代码逻辑关于iOS 订阅、自动订阅 本身功能开发很简单。跟正常的购买没什么大的差异。唯一需要特殊处理(自动订阅)的是,在APP启动时候要增加侦听:[[SKPaymentQueue defaultQueue] addTransactionObserver:self];因为自动订阅,除了第一次购买行为是用户主动触发的。后续续费都是Apple自动完成的,一般在要过期的前24小时开始,苹果会...

2020-03-11 15:51:17

IAP-iOS内购流程

转载自:jianshu.com/p/74a0866bd8d7目录请求商品信息 添加/移除监听 购买 恢复购买请求商品信息发起请求 SKProductsRequest *productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithArray:produ...

2020-03-11 13:41:26

iOS开发中农历与公历的转换,星座计算

转载自:https://www.jianshu.com/p/b054bebca0d2.h文件#import <Foundation/Foundation.h>@interface Lunar : NSObject/***是否闰月*/@property(assign) BOOL isleap;/***农历 日*/@property(assign) int lu...

2020-02-24 13:22:20

保存和恢复App的状态

概述ViewController在App状态的保存和恢复过程中扮演者重要的角色。状态保存会在App挂起之前记录App的配置,在其重新启动的时候可以恢复其配置信息。将App恢复到之前的配置可以为用户节省时间并提供更好的用户体验。状态的保存和恢复过程几乎都是自动执行的,但是你需要告知iOS系统,你的App的那一部分将被保存,下面的步骤展示了如何保存你的App的ViewController状态:...

2019-11-29 20:05:32

关于ios 退到后台,再进入前台的一些问题

当app进入后台,app处于挂起状态,默认程序会可以执行大约5s的样子场景一:计时器显示会快速的闪一下 app有定时器,当app进入后台,定时器将会暂停(是暂停),当app进入前台,定时器会继续运行(是继续,不是重新开始)。当界面中有一个计时器显示(比如一个lable展示当前还剩多长时间),当app进入后台,再切换至前台(这两次操作在5s内完成),你会发现label显示的时间会快速...

2019-11-29 20:04:47

解决 UICollectionViewCell 之间不应有的分割线问题

转载自:https://www.jianshu.com/p/b92d56f3b5061.出现问题:项目中UICollectionViewCell的宽度为 屏幕宽度 / 7,且最小间距已设置为0 , 但是展示的cell间总有莫名其妙的分割线 , 如下图:UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout a...

2019-11-21 16:30:04

[UIVIew]谈谈对drawRect的理解

转载自:https://www.jianshu.com/p/7242bc413ca8写在前面UIView对于iOS开发来讲,再熟悉不过了。也正是因为这一点,我们可能会忽略UIView一些特有方法的理解和使用。今天,笔者主要整理一下对drawRect方法的理解和使用。 默认情况下,该方法在视图加载过程中不做任何人处理。当子类使用Core Graphics和UIKit绘制视图内容时就需要在该...

2019-11-01 15:26:55

如果我们设置UILabel的高度比较高,但是文字的显示是居中的,我们要的是显示在左上角

如果我们设置UILabel的高度比较高,但是文字的显示是居中的,我们要的是显示在左上角- (id)initWithFrame:(CGRect)frame { return [super initWithFrame:frame]; }- (CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOf...

2019-10-22 21:06:51

md5加密原理简单解释

转载自:https://www.cnblogs.com/second-tomorrow/p/9129043.html本文将通过漫画的形式来通俗易懂的讲述什么是MD5加密算法(Message Digest AlgorithmMD5(中文名为消息摘要算法第五版)),MD5加密算法的底层原理以及MD5加密算法的破解算法方法。摘要哈希...

2019-10-17 16:03:31

openId和unionId的区别

转载自:https://blog.csdn.net/qq_33616529/article/details/79080106微信的用户隐私策略:每个接入微信的应用(公众号、APP)就像一个独立的商场,用户使用这些应用就像逛商场,商场用会员卡识别用户,类似的,我们根据商场名字为每个用户生成了一张专属会员卡(openid),每张会员卡只能在对应的商场才能够使用,你不能拿着沃尔玛的会员卡去华润万家积...

2019-10-17 13:57:11

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享达人
    分享达人
    成功上传6个资源即可获取