
iOS
mgr406176009
这个作者很懒,什么都没留下…
展开
-
ios13系统_LSDefaults崩溃解决办法
最近升级了Xcode11,也使用了ios13,以前的项目好好的,突然在ios13上就闪退了,可能跟xcode版本和ios13都有关系。个人认为xcode11有点不稳定。如果闪退报以下错误:这个问题是由于ios13取消了kvc导致的。解决办法:可以把如下代码作为NSObject扩展类添加到项目中,引用即可。+ (void)load{ SEL originalS...原创 2019-11-01 10:47:28 · 2841 阅读 · 1 评论 -
Assertion failure in -[MASViewConstraint install],/xxx/Pods/Masonry/Masonry/MASViewConstraint.m:338
Assertion failure in -[MASViewConstraint install],/xxx/Pods/Masonry/Masonry/MASViewConstraint.m:338Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'couldn't find a common superview for <UIImageView: 0x10dd39590; frame原创 2017-04-06 15:56:22 · 5106 阅读 · 0 评论 -
iOS应用通过蒲公英orFIR安装失败原因排查
本文结合蒲公英以及FIR两家应用托管平台的博文进行整理前言iOS 的内测应用在安装时,很多人都遇到过安装失败的情况,安装失败的原因比较多,下面将一些常见原因总结如下,方便开发者进行排查。在 iOS 9 中启动应用时,出现提示“未受信任的企业级开发者”这样问题是因为在 iOS 9 以后的版本中,苹果对企业签名的应用做了更严格了限制。具体解决办法请见: 企业级证书打包下转载 2017-04-05 18:06:11 · 1812 阅读 · 0 评论 -
UIKit性能调优实战讲解
在使用UIKit的过程中,性能优化是永恒的话题。很多人都看过分析优化滑动性能的文章,但其中不少文章只介绍了优化方法却对背后的原理避而不谈,或者是晦涩难懂而且读者缺乏实践体验的机会。不妨思考一下下面的问题自己是否有一个清晰的认识:为什么要把控件尽量设置成不透明的,如果是透明的会有什么影响,如何检测这种影响?为什么cell中的图片,尽可能要使用正确的大小、格式,如果错误会有什么影响,如何检测这转载 2017-04-05 17:57:34 · 458 阅读 · 0 评论 -
iOS9新特性 3DTouch 开发教程全解(含源码)
本文主要讲解3DTouch各种场景下的开发方法,开发主屏幕应用icon上的快捷选项标签(Home Screen Quick Actions),静态设置UIApplicationShortcutItem,动态添加、修改UIApplicationShortcutItem,peek和pop的实现。一、3DTouch开发准备工作(让模拟器也支持3DTouch的解决办法) 需要支持3DTo转载 2017-02-24 09:14:29 · 666 阅读 · 0 评论 -
OC 之 atomic 与 nonatomic的区别
我们声明属性的时候,必须要考虑到属性特质对编译器所产生的存取方法的影响。下面我们就主要讲讲atomic 与 nonatomic:在默认情况下,由编译器所合成的方法会通过锁定机制确保其原子性(atomicity)。如果属性具备nonatomic特质,则不需要同步锁。请注意!!!!尽管没有名为atomic的特质(如果某属性不具备nonatomic特质,那它就是“原子的”(ato转载 2017-03-01 14:54:18 · 702 阅读 · 0 评论 -
UIView的setNeedsLayout, layoutIfNeeded 和 layoutSubviews 方法之间的关系解释
layoutSubviews总结ios layout机制相关方法- (CGSize)sizeThatFits:(CGSize)size- (void)sizeToFit——————-- (void)layoutSubviews- (void)layoutIfNeeded- (void)setNeedsLayout——————–- (void)se转载 2017-01-20 18:29:37 · 305 阅读 · 0 评论 -
iOS分类(category),类扩展(extension)—史上最全攻略
1.分类是用于给原有类添加方法的,因为分类的结构体指针中,没有属性列表,只有方法列表。2.分类中的可以写@property, 但不会生成setter/getter方法, 也不会生成实现以及私有的成员变量(编译时会报警告); 3.可以在分类中访问原有类中.h中的属性; Extension是Category的一个特例。类扩展与分类相比只少了分类的名称,所以称之为“匿名分类”。 其实开发当中,我们几乎天天在使用。对于有些人来说像是最熟悉的陌生人。转载 2016-12-15 11:43:34 · 780 阅读 · 0 评论 -
Xcode8导入框架出现Use Legacy Swift Language Version的报错
最近Xcode升级了,出现了各种蛋疼的错误提示,今天遇到个导入框架出现了提示Swift版本的问题,具体如下:“Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Co转载 2016-12-14 16:06:11 · 532 阅读 · 0 评论 -
键盘弹出,navigation不隐藏
今天写了一个项目,就类似于微信的聊天页面,底部有输入框,顶部是系统的导航条,键盘弹出时,整个view会自动向上移动,导航也随之向上移动了,页面如下:这不是我想要的效果,我想键盘弹出时,导航的位置不变,想了很多办法,也增加了系统的很多方法,例如:self.navigationController.hidesBarsWhenKeyboardAppears = f原创 2016-12-08 13:39:15 · 1390 阅读 · 0 评论 -
iOS开发笔记--使用blend改变图片颜色
最近对Core Animation和Core Graphics的内容东西比较感兴趣,自己之前也在这块相对薄弱,趁此机会也想补习一下这块的内容,所以之后几篇可能都会是对CA和CG学习的记录的文章。在应用里一个很常见的需求是主题变换:同样的图标,同样的素材,但是需要按照用户喜爱变为不同的颜色。在iOS5和6的SDK里部分标准控件引入了tintColor,来满足个性化界面的需求,但是Appl转载 2016-11-22 17:34:46 · 316 阅读 · 0 评论 -
push到下一个页面时隐藏自定义tabbar
今天写项目时遇到了一个问题:一个自定义的tabbar(继承了系统的UITabBarController),用导航的push跳转到下一个页面时想隐藏该tabbar,用hidesBottomBarWhenPushed没有起作用,原来hidesBottomBarWhenPushed适用于系统的tabbar,自定义的tabbar不能通过hidesBottomBarWhenPushed属原创 2016-12-01 18:04:35 · 1667 阅读 · 0 评论 -
iOS中的round/ceil/floorf函数
ios中math.h中的函数原型:extern float roundf(float);extern double round(double);extern long double roundl(long double);extern float ceilf(float);extern double ceil(double);原创 2017-08-17 17:03:14 · 524 阅读 · 0 评论 -
Assertion failure in -[MASViewConstraint addConstraintWithLayoutAttribute:],'Attributes should be ch
Assertion failure in -[MASViewConstraint addConstraintWithLayoutAttribute:]。Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Attributes should be chained before defining the constraint relation'。libc++abi.dylib: termin原创 2017-04-06 16:29:12 · 2375 阅读 · 0 评论 -
玩转 NSString
Objective-C里核心的处理字符串的类就是NSString和NSMutableString这两个类,这两个类完成了Objective-C中字符串大部分功能的处理NSString字符串属性 //////////字符串属性////////// NSString *str1 = @"string"; NSLog(@"长度:转载 2017-08-11 11:19:54 · 346 阅读 · 0 评论 -
Xcode报错App Installation failed, No code signature found
最近在项目中使用了cocoapods,之后真机运行就经常会报错:App Installation failed, No code signature found(app安装失败,没有找到签名文件)解决办法:1,打开终端 执行sudo chmod -R 777 /Users/mgr/Desktop/Xcode9.3.1/Xcode.app/Contents/Developer/Plat...原创 2019-04-19 10:30:15 · 2322 阅读 · 0 评论 -
iOS检测私有API在工程中的位置
今天提审被拒了,返回的错误信息如下图,即使用了私有API先用命令行找到该com.apple.springboard.lockcomplete私有API在工程中的位置1.进入终端,cd到该工程所在的目录2.输入命令:grep -r xxx . 或者 grep -R xxx . (注意最后的.一定要输入,否则没有反应)r不区分大小写,是recursive递归的意思例如:...原创 2019-04-19 10:15:00 · 498 阅读 · 0 评论 -
AppleWWDRCA.cer证书
AppleWWDRCA 是Apple Worldwide Developer Relations Certification Authority的缩写AppleWWDRCA证书实际上就是对iOS证书(即Develop证书和Distribution证书)的授权认证,其公钥用于解密认证证书的可靠性。iOS以及Mac OS X系统(在安装Xcode时)将自动安装AppleWWDRCA.cer(A...原创 2019-01-23 14:55:35 · 4404 阅读 · 0 评论 -
关于NSUInteger类型的枚举值为-1报错的问题
以前项目还好好的,今天突然报错了,报错的地方为:报错为:Enumerator value evaluates to -1, which cannot be narrowed to type 'NSUInteger' (aka 'unsigned long')大致就是NSUInteger类型的枚举值,不支持值为-1,即类型不匹配。 修改如下把 C++ 的语言改成 Compiler ...原创 2019-01-22 14:23:45 · 2225 阅读 · 0 评论 -
用xib写的view不能添加到viewcontroller上,并且不能交互的问题
今天用xib写了一个UIView添加到UIViewController后,发现两个按钮都没有反应,同时也没有调取相应的点击事件方法。于是给该view添加了一个黄色的背景色,在查看时发现没有黄色的背景色,只有两个按钮 。然后查看视图的层级,发现只有两个按钮,该view并没有添加到UIViewController上,这就肯定与view的frame有关。后来反思发现在UIViewContro...原创 2018-10-19 10:23:57 · 1006 阅读 · 0 评论 -
搭建IPv6网络测试环境
首先需要准备Mac一台iPhone 2部(其中一部用于测试你的项目,请装上你的应用)连接线一根第一步:通过数据线连接iphone和mac第二步:打开iphone的个人热点并选择仅USB如果没有选项,请关闭手机连接的Wi-Fi,用手机自己的移动网络选择仅USB第三步:打开网络偏好设置,确保你的Mac的Wi-Fi是打开的,并且没有连接任何网络如果已有连接wifi可以在高级里删除之前的联网缓存第四步:打...转载 2018-04-02 11:25:29 · 938 阅读 · 0 评论 -
关于NSUserDefaults保存数据的问题总结
大家都知道,NSUserDefaults适合存储轻量级的本地数据,并且在不删除程序的情况下是永久保存的。NSUserDefaults支持的数据格式有:NSNumber(Integer、Float、Double),NSString,NSDate,NSArray,NSDictionary,BOOL类型。这里说明一下,这里只说了NSString,NSArray,NSDictionary等,其对应原创 2016-08-17 16:19:48 · 3825 阅读 · 2 评论 -
Xcode8 支持 iOS7及以下版本
Xcode8 默认只支持iOS8及以上的平台,如果想兼容iOS7以及更低的版本,应该怎么办呢?下载Xcode支持的平台版本地址:https://pan.baidu.com/s/1dFaAqzf下载后的结果如下:拷贝版本到Xcode的DeviceSupport目录将自己需要支持的版本拷贝到DeviceSupport目录“/Applica转载 2017-08-07 11:15:07 · 419 阅读 · 0 评论 -
Xcode各版本官方下载, Mac和IOS及Xcode版本历史
官方下载, 用开发者账户登录,建议用Safari浏览器下载.官方下载地址:https://developer.apple.com/xcode/downloads/ Xcode 77.2 : https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_7.2/Xcode_7.2转载 2017-08-07 11:11:11 · 18437 阅读 · 0 评论 -
UINavigation详解
UINavigation详解(1)导航控制器初始化的时候一般都有一个根视图控制器,导航控制器相当于一个栈,里面装的是视图控制器,最先进去的在最下面,最后进去的在最上面。在最上面的那个视图控制器的视图就是这个导航控制器对外展示的界面,也就是用户看到的界面。(2)我们需要把导航控制器加载到APP中,需要把这个导航控制器设置为window的根视图控制器(都是控制器类,可以赋值),这样就相当于加载转载 2016-12-01 11:50:51 · 534 阅读 · 0 评论 -
iOS 后台运行实现总结
iOS 后台运行的规则应用的运行状态分为以下五种:Not running:应用还没有启动,或者应用正在运行但是途中被系统停止。Inactive:当前应用正在前台运行,但是并不接收事件(当前或许正在执行其它代码)。一般每当应用要从一个状态切换到另一个不同的状态时,中途过渡会短暂停留在此状态。唯一在此状态停留时间比较长的情况是:当用户锁屏时,或者系统提示用户去响应某些(诸如电话来电、有转载 2016-11-09 14:44:13 · 1239 阅读 · 0 评论 -
iOS 7 SDK: 如何使用后台获取(Background Fetch)
本文主要教你如何使用iOS 7 SDK多任务处理API--Background Fetch。我们生活在一个社交化的世界中,大部分用户都安装了几个社交类app,但是每次用户打开app,他们必须要等待app加载更新才能看到跟更多最新的内容,对于越来越没耐心的用户来说这一点无疑令人非常痛苦。现在,iOS 7的后台获取(Background Fetch)可以很好地解决这个问题,在用户打开应用之前,app就转载 2016-11-07 11:56:12 · 637 阅读 · 0 评论 -
The certificate used to sign "XXX" has either expired or has been revoked
在Xcode真机调试开发过程中,无论是使用个人证书或者是企业证书,经常会遇到这样的问题: The certificate used to sign “XXX” has either expired or has been revoked. An updated certificate is required to sign and install the application. 刚开始在转载 2016-08-16 15:28:04 · 911 阅读 · 0 评论 -
ViewController的生命周期分析和使用
iOS的SDK中提供很多原生ViewController,大大提高了我们的开发效率,下面是我的一些经验。一、结构按结构可以对iOS的所有ViewController分成两类:1、主要用于展示内容的ViewController,这种ViewController主要用于为用户展示内容,并与用户交互,如UITableViewController,UIViewController。转载 2016-06-20 11:04:10 · 338 阅读 · 0 评论 -
两分钟学会在GitHub托管代码
两分钟学会在GitHub托管代码本篇博客针对不会Git的小童鞋,大神们可以绕过,错误之处谢谢指正;关于GitHub的强大此处不在说明,知道GitHub也有一段时间了,但是一直苦于不会使用。本篇文章介绍的是如何将工程代码托管到上面;如果你还没注册GitHub账号请到https://github.com/上注册如果你已经注册GitHub账号,在你的电转载 2015-04-07 14:32:08 · 435 阅读 · 0 评论 -
iOS 7的手势滑动返回功能
现在使用默认模板创建的iOS App都支持手势返回功能,如果导航栏的返回按钮是自定义的那么则会失效,也可以参考这里手动设置无效。[cpp] view plain copy if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecogni转载 2016-05-23 16:26:19 · 488 阅读 · 0 评论 -
8行代码教你搞定iOS导航控制器全屏滑动返回效果
前言 此次文章,讲述的是导航控制器全屏滑动返回效果,而且代码量非常少,10行内搞定。 效果如图: 如果喜欢我的文章,可以关注我,也可以来小码哥,了解下我们的iOS培训课程。陆续还会有更新ing.... 一、自定义导航控制器 目的:以后需要使用全屏滑动返回功能,就使用自己定义的导航控制器。 二、分析导航控制器侧滑功能 效果:导航控制器默转载 2016-05-19 09:30:07 · 559 阅读 · 0 评论 -
在OC项目中添加Swift文件并实现混合编程
对于已经工作的开发者,并不适合也没有条件从一个全新的swift项目开始,进行开发. 虽然网上关于swift和oc混合编程的教程比较多,但是大多是基于 swift项目的,所以对咱们 OCer的参考价值有一定折扣.现在swift虽然仍然存在很多缺陷,但是鉴于苹果的强势,是时候在项目中把简单的功能交给swift了,给自己,给项目,给swift一个缓冲区,都是极好的.说了这么多,开始上代码转载 2016-05-12 11:02:42 · 840 阅读 · 0 评论 -
Storyboard介绍及使用2 Storyboards Part2 译文
原文地址:http://www.raywenderlich.com/50310/storyboards-tutorial-in-ios-7-part-2在storyboard on ios7系列教程的第一部分,已经介绍了使用Interface Builder来创建和连接各种视图控制器的基本知识,以及如何直接从storyboard编辑器进行自定义表视图单元格。 在本教程系列的转载 2016-03-11 10:32:50 · 718 阅读 · 0 评论 -
Storyboard介绍及使用1 Storyboards Part1 译文
参考文章Storyboards Tutorial in iOS 7: Part 1Storyboards Tutorial in iOS 7: Part 2背景知识Storyboard 在iOS5时引入,它能节约你创建UI的时间,先看一张storyboard的图:storyboard样图看到它,你就像看到了一张设计图,一切已胸有成竹!转载 2016-03-11 10:24:51 · 730 阅读 · 0 评论 -
http协议post数据标准格式
在C#中有HttpWebRequest类,可以很方便用来获取http请求,但是这个类对Post方式没有提供一个很方便的方法来获取数据。网上有很多人提供了解决方法,但都参差不齐,这里我把我使用的方法总结出来,与大家分享。 本文精华:实现了post的时候即可以有字符串的key-value,还可以带文件。 Post数据格式 Post提交数据的时候最重要就是把Key-Value的转载 2016-03-10 18:01:05 · 3993 阅读 · 0 评论 -
各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式
各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式编解码学习笔记(一):基本概念媒体业务是网络的主要业务之间。尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析、应用开发、释放license收费等等。最近因为项目的关系,需要理清媒体的codec,比较搞的是,在豆丁网上看运营商的规范 标准,同一运营商同样转载 2016-03-31 15:16:12 · 4460 阅读 · 0 评论 -
微信SDK导入到Xcode中编译错误
今天在官网上下载了一个新版本的微信SDK,这个SDK是支持64位和bitcode的(bitcode是ios9 中新增加的功能)。按照官网的说明,增加了info.plist和类库,但是编译的时候出现了下面的错误:Undefined symbols for architecture armv7: "operator new[](unsigned long)", referen原创 2015-12-23 11:19:01 · 1481 阅读 · 0 评论 -
iOS 用本地文件保存自定义模型
iOS中,保存数据有四种方法,归档、文件、NSUserDefaults和sqlite数据库。每一种方式都有其特定的类型,在上一篇文章中介绍了用NSUserDefaults保存自定义模型的数据,这一篇来介绍一下用本地文件保存自定义模型的数据。在自定义模型中,要遵守协议点h#import @interface ChatLogModel : NSObject@property原创 2016-08-18 13:59:46 · 5672 阅读 · 0 评论 -
App启动加载广告页面思路
需求很多app(如淘宝、美团等)在启动图加载完毕后,还会显示几秒的广告,一般都有个跳过按钮可以跳过这个广告,有的app在点击广告页之后还会进入一个广告页面,点击返回进入首页。虽然说这个广告页面对用户体验来说并不是很好,但是如果真的有这个需求,我们还是要想办法去开发,至少这比内嵌广告要友善的多。今天我们就来开发一个广告页面,效果如下。效果图.gif思路1.广告页加载思转载 2016-09-09 18:02:24 · 1546 阅读 · 0 评论