- 博客(37)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
转载 iOS可能用到的开源库和第三方组件
1、通过CocoaPods安装[AFNetworking](https://github.com/AFNetworking/AFNetworking)网络请求组件[FMDB](https://github.com/ccgus/fmdb)本地数据库组件[SDWebImage](https://github.com/rs/SDWebImage)多个缩略图缓存组件[UICKeyCh
2016-11-29 08:56:11
4254
转载 iOS 文字属性字典
iOS开发过程中相信大家经常遇到当需要给字体,颜色,下划线等属性的时候参数是一个NSDictionary 字典但是字典里面到底有哪些键值对了我们把常用的总结一下首先我们创建一个最简单的,设置一下字体和大小我们使用是一个NSString 的方法- (void)drawInRect:(CGRect)rect withAttributes:(N
2017-12-05 14:18:52
285
转载 iOS超全开源框架、项目和学习资料汇总--数据库、缓存处理、图像浏览、摄像照相视频音频篇
iOS超全开源框架、项目和学习资料汇总(1)UI篇iOS超全开源框架、项目和学习资料汇总(2)动画篇iOS超全开源框架、项目和学习资料汇总(3)网络和Model篇数据库FMDB – sqlite的工具, 多线程FMDatabaseQueue实例,FMDB数据库的使用演示和封装工具类。GXDatabaseUtils – 在FMDB基础上
2017-03-14 15:28:44
487
转载 iOS自动布局框架-Masonry详解
目前iOS开发中大多数页面都已经开始使用Interface Builder的方式进行UI开发了,但是在一些变化比较复杂的页面,还是需要通过代码来进行UI开发的。而且有很多比较老的项目,本身就还在采用纯代码的方式进行开发。而现在iPhone和iPad屏幕尺寸越来越多,虽然开发者只需要根据屏幕点进行开发,而不需要基于像素点进行UI开发。但如果在项目中根据不同屏幕尺寸进行各种判断,写死坐标的话,
2017-02-03 16:40:55
426
转载 iOS即时通讯
原文前言本文会用实例的方式,将iOS各种IM的方案都简单的实现一遍。并且提供一些选型、实现细节以及优化的建议。注:文中的所有的代码示例,在github中都有demo:iOS即时通讯,从入门到“放弃”?(demo)可以打开项目先预览效果,对照着进行阅读。言归正传,首先我们来总结一下我们去实现IM的方式第一种方式,使用第三方IM服务对于短
2017-02-03 14:24:16
1791
1
转载 Crash杀手排名
随着公司嘟嘟牛app用户数量多了起来,崩溃的问题也多了起来,最近这几天终于得空,集中时间处理了一下崩溃的问题,现总结一下,希望对大家有所帮助。杀手 NO.1:NSInvalidArgumentException 异常出现这个crash的原因有很多,选取了崩溃次数较多的crash。crash 日志1-11-[__NSPlac
2017-02-03 14:19:00
454
转载 iOS国际化语言
前言语言本地化,又叫做语言国际化。是指根据用户操作系统的语言设置,自动将应用程序的语言设置为和用户操作系统语言一致的语言。往往一些应用程序需要提供给多个国家的人群使用,或者一个国家有多种语言,这就要求应用程序所展示的文字、图片等信息,能够让讲不同语言的用户读懂、看懂。进而提出为同一个应用程序适配多种语言,也即是国际化。语言国际化之所以又叫做语言本地化,这是站在每个用户的角度而言的,是指能够
2017-02-03 11:10:51
258
转载 iOS动画详解
一、基础知识CAAnimation.png二、CABasicAnimation1. 动画的属性和解释2.属性值的解释repeatCount : 如果在swift中需要一直不断重复:Float.infinity,OC:HUGE_VALFtimingFunction:timingFunction.png
2017-02-03 11:06:27
271
转载 TableView类似QQ分组的折叠与展开
类似QQ分组的样子,实现tableView的折叠与展开。其实要做这个效果我先想到的是在tableView中再嵌套多个tableView,这个想法实现起来就有点难了。所以还是换个思路,把tableView的HeaderView用上了。给headerView加上手势,轻松解决折叠展开的问题。直接上代码吧。@property (nonatomic, strong) UITableView *
2016-12-29 11:12:39
752
转载 iOS开发系列--地图与定位
摘要: 现在很多社交、电商、团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用和导航应用所特有的。的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式。例如你到了一个陌生的地方想要查找附近的酒店、超市等就可以打开软件搜索周边;类似的,还有很多团购软件可以根据你所在的位置自动为你推荐某些商品。总之,目前地图和定位功能已经大量引入到应用开发中。今天就和大家一起看一下
2016-12-21 17:34:43
519
转载 iOS开发------ 小知识点总结,也许你用得上
1、为什么要强制开启ATS和HTTPS加密HTTP是非常不安全的明文传输协议,任何通过HTTP协议传输的数据都以明文形式在网络中“裸奔”,任何数据都处在被窃听、篡改、冒充这三大风险之中。HTTP不提供任何方式的数据加密,如果攻击者劫持了HTTP流量,就可以直接读懂其中的信息;而且HTTP并不验证服务器身份的真实性,服务器返回的请求容易被篡改或者假冒,而用户根本无法察觉。因此HTTP协议不适合传
2016-12-21 14:54:44
686
转载 图片压缩和权限管理
等比例压缩图片- (UIImage *)resetSizeSourceImage:(UIImage*)sourceImage { CGFloat scaleToWidth = 1280; if ( scaleToWidth > MAX(sourceImage.size.width, sourceImage.size.height)) { return s
2016-12-21 14:46:32
355
转载 简单的修改项目中的头像
1. 获取手机相册和相机权限在info.plist里面添加 Privacy - Photo Library Usage Description, 允许访问手机相册在info.plist里面添加 Privacy - Camera Usage Description, 允许访问照相机获取相册和相机权限2. 遵守两个协议 UINavigationControllerDelegat
2016-12-21 10:56:34
1196
转载 OC正则表达式判断手机号、身份证号、车牌号等是否正确
1、手机号判断+ (BOOL) validateMobile:(NSString *)mobile{ //手机号以13, 15,18开头,八个 \d 数字字符 NSString *phoneRegex = @"^((13[0-9])|(15[^4,\\D])|(18[0,0-9]))\\d{8}$"; NSPredicate *phoneTest = [NSPredi
2016-12-19 11:38:59
880
转载 AFNetworking到底做了什么?
写在开头:作为一个iOS开发,也许你不知道NSUrlRequest、不知道NSUrlConnection、也不知道NSURLSession...(说不下去了...怎么会什么都不知道...)但是你一定知道AFNetworking。大多数人习惯了只要是请求网络都用AF,但是你真的知道AF做了什么吗?为什么我们不用原生的NSURLSession而选择AFNetworking?
2016-12-15 11:29:36
330
转载 collectionView的进阶
UICollectionView是iOS6的时候引入的,它同UITableView共享一套API设计,都是基于datasource和delegate,都继承自UIScrollView。但它又与UITableView有很大不同,它进行了进一步的抽象,将它的所有子视图的位置、大小、transform委托给了一个单独的布局对象:UICollectionViewLayout。这是一个抽象类,我们可以继承它
2016-12-15 11:07:03
346
转载 一次理解iOS证书配置流程,再也不用查教程
众所周知,iOS APP真机调试,上架等流程十分复杂,很多人每次操作都要上网查教程,网上的教程也很多,有一些真的是很详细,比如这篇http://www.thinksaas.cn/topics/0/451/451731.html, 但是这些文章大多有一个通病,就是只说怎么搞,不说每一步为啥,有的朋友,也是每次操作都要查一下,照着教程弄, 弄完就忘了,这篇文章就来说一下每一步都为了什么,让大家看完
2016-12-09 15:19:47
424
转载 UICollectionView详解之基础使用介绍
UICollectionView简介UICollectionView在iOS6.0以后引进,与UITableView比较相似。但是UICollectionView将布局完全交给UICollectionViewLayout,而且允许用户自定义layout来进行布局。使其功能比UITableView更加强大、布局更加灵活,迅速在各大APP广泛使用。本篇将对UICollectionView的使用
2016-12-08 15:56:30
371
转载 UICollectionView详解之自定义布局
想看UICollectionView基础使用的可以先看我的另一篇文章。这篇主写关于UIollectionViewLayout自定义布局的一些常用方法,瀑布流布局的自定义,包括头尾试图的添加,插入删除动画,还有9.0后移动动态布局的使用。UICollectionViewLayout自定义常用的几个方法1234567
2016-12-08 15:55:11
470
转载 [iOS]数据库第三方框架FMDB详细讲解
初识FMDBiOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较麻烦。于是,就出现了一系列将SQLite API进行封装的库,例如FMDB、PlausibleDatabase、sqlitepersistentobjects等。FMDB是一款简洁、易用的封装库。因此,在这里推荐使用第三方框架FMDB,它是对libsqlite3框架的封装,用起来
2016-12-08 15:16:11
345
转载 初探CALayer属性
一直觉得一个view就一个layer到今天才发现不是这样子的其关系图如下图片.pngCALayer属性表如下图片.pngCALayer和UIView的区别1.UIView是UIKit的(只能iOS使用),CALayer是QuartzCore的(iOS和mac os通用)2.UIView继承UIResponder,C
2016-12-08 14:40:23
238
转载 iOS开发中常用的宏定义
总结了iOS开发过程中的一些常用宏,以后会陆陆续续添加进来。字符串是否为空 #define kStringIsEmpty(str) ([str isKindOfClass:[NSNull class]] || str == nil || [str length] 数组是否为空 #define kArrayIsEmpty(array) (arr
2016-12-08 09:52:26
436
转载 iOS中触摸事件的响应者链及手势识别器
用户触摸事件是依赖于响应者链来处理-响应者链:第一响应者是视图或者其子类主要负责接收用户触摸事件;第一响应者会将事件传递给其所在的视图控制器;如果视图控制器无法处理该事件,则继续将该事件向上传递至当前App的Window;如果Window无法处理事件,则继续将该事件传递给Application。-事件在响应者链传递过程中如果被处理则响应者链被中断响应者对象在iOS中不是任何
2016-12-01 11:14:20
376
转载 获取iOS设备信息(内存/电量/容量/型号/IP地址/当前WIFI名称)
1.获取电池电量(一般用百分数表示,大家自行处理就好)1234-(CGFloat)getBatteryQuantity{ return [[UIDevice currentDevice] batteryLevel];}2.获取电池状态(UIDevic
2016-12-01 08:27:47
586
转载 iOS常用加密算法介绍和代码实践
iOS系统库中定义了软件开发中常用的加解密算法,接口为C语言形式。具体包括了以下几个大类:1231 #include //常用加解密算法2 #include //摘要算法3 #include 4 #include 5 #include其中第一类常用加解密算法就包含了A
2016-11-30 15:22:29
316
转载 iOS 10 开发适配系列 之 权限Crash问题
升级 iOS 10 之后目测坑还是挺多的,记录一下吧,看看到时候会不会成为一个系列。直入正题吧今天在写 Swift 3 相关的一个项目小小练下手,发现调用相机,崩了。试试看调用相册,又特么崩了。然后看到控制台输出了以下信息:This app has crashed because it attempted to access privacy-sensitive data without
2016-11-26 08:28:04
321
转载 iOS9适配 之 关于info.plist 第三方登录 添加URL Schemes白名单
近期苹果公司iOS 9系统策略更新,限制了http协议的访问,此外应用需要在“Info.plist”中将要使用的URL Schemes列为白名单,才可正常检查其他应用是否安装。受此影响,当你的应用在iOS 9中需要使用 QQ/QQ空间/支付宝/微信SDK 的相关能力(分享、收藏、支付、登录等)时,需要在“Info.plist”里增加如下代码: key>LSApplicationQuer
2016-11-25 10:40:37
346
转载 iOS基础开发技巧2
这里主要讲一些我在日常开发中用到的一些小的技巧,其实也算不上技巧吧,就是省去一些不必要的代码,或者有的小问题困扰你很久说不行在这里你能找到答案在UIView的扩展 快速修改frame在iOS修改view的frame,我们经常需要写一大堆代码,来修改frame中的一个小属性,这里有一个方法,就是直接修改frame的每个值新建一个category UIView+PPSF
2016-11-24 09:24:09
298
转载 iOS基础开发技巧
这里主要讲一些我在日常开发中用到的一些小的技巧,其实也算不上技巧吧,就是省去一些不必要的代码,或者有的小问题困扰你很久说不行在这里你能找到答案打印系统所有已注册的字体名称- (void)enumerateFonts{ for(NSString *familyName in [UIFont familyNames]) { NSLog(@"%@
2016-11-24 09:14:31
264
转载 iOS开发之AFNetworking 3.0.4使用
昨天使用Cocoapods导入AFN做POST的时候,导入的最新版的3.0.4,突然发现找不到AFHTTPRequestOperationManager了。。。上github上一看,发现没有这个了。刚开始以为是cocoapods没有给我导进去,因为是小demo,就想自己写一个网络请求的,发现也没有这NSURLConnection了,被弃用了,突然意识到,这个就是AFHTTPRequestOpera
2016-11-23 08:42:24
296
转载 GCD图文详细讲解
前言对初学者来说,GCD似乎是一道迈不过去的坎,很多人在同步、异步、串行、并行和死锁这几个名词的漩涡中渐渐放弃治疗。本文将使用图文表并茂的方式给大家形象地解释其中的原理和规律。线程、任务和队列的概念异步、同步 & 并行、串行的特点一条重要的准则一般来说,我们使用GCD的最大目的是在新的线程中同时执行多个任务,这意味着我们需要两项条
2016-11-22 14:54:30
2490
转载 iOS最全的APP上架教程
授权转载,作者:随梦而飞飞准备开发者账号完工的项目上架步骤一、创建App ID二、创建证书请求文件 (CSR文件)三、创建发布证书 (CER)四、创建Provisioning Profiles配置文件 (PP文件)五、在App Store创建应用六、打包上架一、创建App ID1.打开苹
2016-11-21 17:29:33
348
转载 使用GCD创建单例模式的几种方法
1.单利模式概述 链接: iOS开发懒汉模式&恶寒模式2.使用GCD实现单利模式2.1新建一个project,然后新建一个HMDataTool类展示GCD实现单例模式[objc] view plain copy #import @interface HMDataTool : NSObject + (instan
2016-11-21 17:25:53
468
转载 巧谈GCD
谈到iOS多线程,一般都会谈到四种方式:pthread、NSThread、GCD和NSOperation。其中,苹果推荐也是我们最经常使用的无疑是GCD。对于身为开发者的我们来说,并发一直都很棘手,如果对GCD的理解不够透彻,那么iOS开发的历程绝对不会顺利。这里,我会从几个角度浅谈我对GCD的理解。 一、多线程背景 Although threads have been aro
2016-11-21 17:22:14
292
转载 iOS开发UI篇—程序启动原理和UIApplication
一、UIApplication1.简单介绍(1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序。(2)每一个应用都有自己的UIApplication对象,而且是单例的,如果试图在程序中新建一个UIApplication对象,那么将报错提示。(3)通过[UIApplicationsharedApplication]
2016-11-19 17:10:15
243
转载 iOS中几种数据持久化方案
作者:@翁呀伟呀 授权本站转载概论所谓的持久化,就是将数据保存到硬盘中,使得在应用程序或机器重启后可以继续访问之前保存的数据。在iOS开发中,有很多数据持久化的方案,接下来我将尝试着介绍一下5种方案:plist文件(属性列表)preference(偏好设置)NSKeyedArchiver(归档)SQLite 3Co
2016-11-18 16:51:45
287
转载 iOS权限管理
APP开发避免不开系统权限的问题,如何在APP以更加友好的方式向用户展示系统权限,似乎也是开发过程中值得深思的一件事。那如何提高APP获取iOS系统权限的通过率呢?有以下几种方式:1.在用户打开APP时就向用户请求权限;2.告知用户授权权限后能够获得好处之后,再向用户请求权限;3.在绝对必要的情况下才向用户请求权限,例如:用户访问照片库时请求访问系统相册权限;4.在展示系统权限的对话框前,
2016-11-17 09:19:40
515
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人