• 等级
  • 220726 访问
  • 101 原创
  • 18 转发
  • 14769 排名
  • 30 评论
  • 30 获赞

iOS 11下layoutSubviews调用改动

iOS 11中view移动时,当y值在statusBar之下时,会调用layoutSubViews方法。如果y值不在statusBar之下就不用调用。当有NavigationBar时,当y值在NavigationBar或statusBar之下时,会调用layoutSubViews方法。如果y值不在NavigationBar或statusBar之下就不用调用。在iOS 11以下的版本中,不会调用。

2017-12-13 16:48:41

lottie简单试用

Airbnb lottie,一个用json来实现动画的开源项目。通过Bodymovin导出Json文件,然后用lottie在Android、iOS和React Native上实现动画效果。与手写动画相比,节省了不少的时间,而且还兼容Android、iOS。 软件安装步骤: - 1、首先需要安装AE。 - 2、安装完成之后,需要安装Bodymovin插件,安装Bodymovin时按照方法一,下载

2017-02-13 14:46:01

iOS 10下网络请求返回Error code=-1005问题修复

wifi情况下,在iOS 10上大概率的出现code = -1005,但在iOS 9,iOS 8,iOS 7上都没有问题。而且移动网络下也没有这个问题。通过谷歌,在苹果论坛中找到了相同情况的帖子。当时还以为是苹果的bug。但通过测试许多大厂的App都没有此问题,而且Android也没有问题,所以就怀疑是iOS App端问题。于是就想自己写一个简单的测试网络服务,只返回和当前App上相同数据量的jso

2017-02-10 10:06:08

RN中RCTScrollView中属性重名

在更新到Xcode8之后,RN中的RCTScrollView中refreshControl属性的setter方法出错, 代码如下:- (void)setRefreshControl:(RCTRefreshControl *)refreshControl { if (_refreshControl) { [_refreshControl removeFromSuperview]; } _r

2016-09-19 14:35:57

ABPeoplePicker在iOS10中crash

在iOS10中使用ABPeoplePicker获取联系人电话号码时,直接crash。 在stackoverflowstackoverflower地址中搜到,这个Address Book API 在iOS9已经被废弃,用Contacts Framework替代。 这样只需要把ABPeoplePickerViewController替换为CNContactPickerViewController。具

2016-09-19 14:32:05

iOS App Crash日志

在开发App阶段,如果出现了Crash,可以通过Debug area,看出Crash的原因。但应用上线后,怎么去查看Crash Log呢?可以通过以下4种方法查看 通过iTunes同步功能,可以把Crash Log同步到Mac或PC上MacOSX: ~/Library/Logs/CrashReporter/MobileDevice/ Windows XP: C:\Documents and Sett

2016-08-24 15:46:00

指纹识别

苹果在iOS8之后开启了指纹识别的功能,如果想让自己的App能够使用指纹识别功能,必须要满足一定的条件才行。开发文档 1. 必须是iPhone5s之后的设备 2. 系统版本必须在等于或大于iOS8具体实现使用指纹识别,必须要引入LocalAuthentication.framework。引入之后,需要import <LocalAuthentication/LocalAuthentication.

2016-08-22 14:41:05

iOS App对IPv6的支持

从2016年6月1号之后发布或更新App必须要支持IPv6。如果不支持IPv6,直接就会被拒。通过苹果官方文档上提供的方式配置IPv6网络,而后进行IPv6测试,应用跑的很溜,没有出现网络报错和请求慢的问题。但当把App提交给苹果审核时,缺被拒了。而且被拒的理由竟然是: We discovered one or more bugs in your app when reviewed on iPad

2016-08-10 09:37:19

OC的私有、保护、公有和KVC

正确理解私有、保护和公有在OC中属性默认都是公有的。如果有私有、保护和公有成员的需求,也可以通过OC关键字进行设置。The Scope of Instance VariablesTo enforce the ability of an object to hide its data, the compiler limits the scope of instance variables—that i

2016-08-04 16:17:32

self和Super的msgSend

下面代码输出值引出对Self和Super的msgSend的思考@interface Father : NSObject @end@implementation Father @end@interface Son : Father @end@implementation Son- (instancetype)init { if (self = [super init]) { N

2016-07-29 17:49:25

category探索

apple推荐category的使用场景 给现有的类添加方法 可以把类的实现分开在几个不同的文件里面。这样做有几个显而易见的好处 可以减少单个文件的体积 可以把不同的功能组织到不同的category里 可以由多个开发者共同完成一个类 可以按需加载想要的category等等 声明私有方法 声明私有方法是指,在原类的.m文件中定义category,且category在implement之前,这时在c

2016-07-21 15:29:16

NSScanner用法

NSScanner,可以在字符串中扫描指定的字符,并把他们翻译或转换为数字和别的字符串;从头到尾扫描整个字符串的每个字符。 初始化方法: 1. initWithString 2. scannerWithString 3. localizedScannerWithString 刚创建的scanner对象指向字符串的开头。方法setCaseSensitive: //是否忽略大小写,默认是忽略

2016-07-12 11:29:06

NSArray和NSSet对比

NSArray和NSSet都是用于存储对象的集合;NSSet、NSMutableSet声明的对象,是无序的集合,在内存中存储方式是不连续的;而NSArray、NSMutableArray声明的对象,是有序集合,在内存中的存储位置也是连续的。NSSetNSSet *set = [NSSet setWithObjects:@"1", @"2", @"3", @"4", @"5", @"6",@"7",@

2016-07-06 17:24:26

设置navigationbar上得字体和颜色

设置navigationbar上标题的字体和颜色 NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[UIColor appTextBlackColor], NSForegroundColorAttributeName, [UIFont systemFontOfSize:18], NSFontAttributeNa

2015-09-26 09:50:27

dispatch_async和dispatch_sync在dispatch_get_main_queue上的区别

dispatch_async中加入dispatch_get_main_queue中,是异步运行中把主队列中的运行任务放到主线程中去运行。 而dispatch_sync中的dispatch_get_main_queue,是在主线程中运行主队列,当把主队列中得任务放到主线程时,会和dispatch_sync进行线程争夺。这时就会产生线程死锁。

2015-09-26 09:45:47

Xcode7,iOS9下primaryLanguage属性报错

xcode7 ios9下primaryLanguage属性报错,只需要修改为NSString *lang = [[NSLocale preferredLanguages] objectAtIndex:0];即可参考链接:http://stackoverflow.com/questions/3910244/getting-current-device-language-in-ios

2015-09-23 15:29:05

mac下git的简单使用

设置SSH key, 在terminal下 ssh-keygen -t rsa -C "你的邮箱地址" cat ~/.ssh/id_rsa.pub之后把整个从ssh开始到你的用户名结束的字段都上传到服务器上 pbcopy 这样就能使用git的ssh模式了 git clone git@。。。。clone下来项目主分支 git checkout  分支版本  切换到其他分支

2015-09-21 21:15:11

lanucherImage显示时加载网络任务

显示launchimage直到网络任务完成 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {     // Override point for customization after application launc

2015-09-02 15:32:38

Block的认识和使用

Blocks是Objective-C的匿名函数。block是iOS在4.0之后新增的程序语法。 Blocks有三种类型,_NSConcreteGlobalBlock,_NSConcreteStackBlock和_NSConcreteMallocBlock。 1._NSConcreteGlobalBlock 全部的静态block,不会访问任何外部变量。 2._NSConcreteStackBl

2015-08-30 20:59:35

在NSUserDefaults中保存自定义的对象

在iOS开发中,需要用到一些回调值(从A到B,从B返回时把B中的值带回A中),其实方法也很多(delegate,block,nsuserdefaults等)。我想用NSUserDefaults回调一个我自定义的对象。于是我就直接去setobject这个对象,这是程序就出现crash,crash信息为 reason: 'Attempt to insert non-property list obj

2015-08-14 22:15:53

bryan__ren

关注
  • iOS开发
  • 中国