- 博客(68)
- 收藏
- 关注
转载 解决MAC系统升级导致COCOAPODS失效问题
使用pod install出现如下错误-bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory这是Mac升级系统导致,当你的Mac系统升级为 high siera的
2018-01-06 15:47:18
2132
原创 获取指定时间的前n天或后n天
NSCalendar *calendar = [NSCalendar currentCalendar]; NSUInteger unitFlags = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalenda
2017-07-25 11:14:06
790
原创 iOS蓝牙开发连接系统或其他APP已经连接、配对成功的蓝牙设备
在蓝牙开发的时候,扫描外设的方法扫描到的设备只能是没有被连接的设备,也就是说如果有设备在本手机中已经连接配对成功了之后就不会被[_centralManager scanForPeripheralsWithServices:nil options:nil];方法扫描到,一开始的手自己也没有注意到这个问题,结果在老板使用的工程中,老是出现系统已经连接上蓝牙设备了,然后就找不到设备了的情况,无奈,是
2017-04-05 12:07:49
16098
5
原创 iOS简单动画效果:闪烁、移动、旋转、路径、组合、
#define kDegreesToRadian(x) (M_PI * (x) / 180.0) #define kRadianToDegrees(radian) (radian*180.0)/(M_PI) - (void)viewDidLoad{ [superviewDidLoad]; self.title = @"测试动画"; self.view.backgr
2016-10-28 16:17:04
14513
原创 CocoaPods安装第三方SDK报错[!] The dependency `ReactiveCocoa (~> 4.1.0)` is not used in any concrete target.
CocoaPods安装第三方SDK报错:[!] The dependency `ReactiveCocoa (~> 4.1.0)` is not used in any concrete target.解决方法:在podfile 文件中输入如下:platform :ios, “9.0” target "项目名" dopod 'ReactiveCocoa
2016-06-23 19:15:33
3057
转载 IOS 单例设计模式解读
IOS 中单例设计模式的解读与用法一、单例的作用 顾名思义,单例,即是在整个项目中,这个类的对象只能被初始化一次。它的这种特性,可以广泛应用于某些需要全局共享的资源中,比如管理类,引擎类,也可以通过单例来实现传值。UIApplication、NSUserDefaults等都是IOS中的系统单例。二、单例的写法 单例的写法常用
2016-05-27 15:59:18
584
原创 iOS开发----懒加载
所谓的懒加载可以定义为:延时加载,即当对象需要用到的时候再去加载。其实就是所谓的重写对象的get方法,当系统或者开发者调用对象的get方法时,再去加载对象。需要注意的是:重写get方法时,需要先判断对象当前是否为空,不为空的话才去实例话对象。懒加载的优点不需将对象的实例化写到viewDidLoad,可以简化代码,增强代码的可读性对象的实例化在getter方法中,各司
2016-05-25 14:44:49
565
转载 iOS开发----SQLite的使用
SQLite是嵌入式的和轻量级的SQL数据库。SQLite是由C实现的。广泛用于包括浏览器(支持HTML5的大部分浏览器,IE除外)、iOS、Android以及一些便携需求的小型web应用系统。1 使用原因:存储、检索信息2 SQLite是MySQL精简版。但无需服务器就能进行。3 两个限制:1)必须手动创建数据库 2)没有面向对象的接口。4 如何手动创建数据库。
2016-05-23 15:00:55
516
转载 iOS开发--内存管理--学习手动内存管理暂时抛弃ARC以及retain/assign知识
我们为什么需要内存管理?当使用内存达到40M和45M时候会发出警告,如果不处理,占用内存达到120M时直接强制关闭程序。所以出现闪退除了是程序出现逻辑错误,还有可能是内存使用过大。(1)创建一个对象的过程:先分配内存空间存储对象;初始化成员变量;返回对象的指针。(2)对象在创建时,内部会自动创建一个引用计数器retainCount,当retainCount=0时,系统会回收当前对象
2016-05-23 14:54:48
1209
转载 转载--- GCD多线程开发
介绍:Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,以优化的应用程序支持多核心处理器和其他的对称多处理系统的系统。这建立在任务并行执行的线程池模式的基础上的。它首次发布在Mac OS X 10.6 ,iOS 4及以上也可用。设计:GCD的工作原理是:让程序平行排队的特定任务,根据可用的处理资源,安排他们在任何可用的处理器核心上执行任务。
2016-04-27 17:37:16
535
原创 iOS开发--多线程编程(四)GCD(Grand Central Dispatch)
GCD (Grand Central Dispatch) GCD底层也是用线程来实现,指示苹果帮咱们封装了具体操作的方法,这样可以让程序员不用关注实现的细节,只需要专注功能的实现 GCD参数 queue:队列 block:任务 GCD 有两种执行任务的方式 1.同步 dispatch_sync(避免在主队列中使用同步执行主线程任务 容易死锁) 2,异步 dispa
2016-04-27 17:09:59
1040
原创 iOS开发--多线程编程(三)NSOperation
NSOperation是一个基类(抽象类)不能直接使用,必须使用他的子类它默认是在当前线程进行操作如果单独使用 NSOperation必须手动启动 常与 NSOperationQueue一起使用。在与 NSOperationQueue一起使用会自动开辟线程进行操作不用手动启动 NSOperation系统提供的两个子类 NSInvocati
2016-04-27 15:45:00
599
原创 iOS开发--assign、retain、copy的区别
assign、retain、copy说起来都是比较基础的知识点,在项目中基本上都要声明这些属性特征,但是一直都没有抽出时间来整理这些零散的知识点,现在终于能够来整理一遍。1. assign假设你用malloc分配了一块内存,并且把它的地址赋值给了指针a,后来你希望指针b也共享这块内存,于是你又把a赋值给(assign)了b。此时a 和b指向同一块内存,请问当a不再需要这块内存,能否直接
2016-04-26 21:05:43
782
原创 iOS开发--多线程编程(二)NSThread买票
#import "ViewController.h"@interface ViewController (){ UILabel *showLab;// 当前余票 int curTicketNumber;// 售票窗口名称 NSString *windowName;// 已售票数 int saleTicketNumber;// N
2016-04-26 20:10:54
1002
原创 iOS开发--多线程编程(一)NSThread
当用户下载资源,进行图像处理,耗时数据处理等任务时往往希望操作这个任务的时候其他操作不会被中断这时候就用到多线程在单线程中一个线程只能执行一个任务,一个任务处理不完另一个任务就不能开始,这样会影响用户体验,让用户觉得APP卡顿现在苹果手机都是多核处理器,这样我们可以把一个任务分成多个步骤,在不要求顺序的情况下,使用多线程既能解决线程阻塞增加用户体验又
2016-04-26 16:01:34
540
转载 IOS开发--CoreData 入门
简介Core Data储存app数据的一个常见替代选择是使用XML属性列表,虽然属性列表可以让你今天的工作变得轻松,但它们也会随后回过头来咬你一口。无论何时你编辑属性列表,发生的变化都是原子性的。这意味着即便是很小的更改要求,整个文件都会被加载到内存中,然后在保存的时候,整个文件都会被写回到硬盘。随着数据量的增长,app也会变得越来越慢。但是如果你基于SQLite数
2016-04-13 15:28:07
676
原创 播放本地短音频和本地歌曲
播放音频,首先要导入框架 #import 1,播放短音频:(如简短提示音)// 步骤:1,注册 2,播放// /* NSString *path = [[NSBundle mainBundle]pathForResource:@"message_prompt" ofType:@"mp3"];// SystemSoundID ID = 1;// 1
2016-04-12 20:48:32
1180
原创 iOS开发--生成二维码及扫描二维码(原生)
1,生成二维码 需要导入框架:#import 通过滤镜CIFilter生成二维码二维码的内容(传统的条形码只能放数字):纯文本,名片,URL需要声明的属性:// 生成二维码@property (nonatomic, strong) UIImageView *imgView;编写代码,调用 markZbarAction 方法即可
2016-04-08 18:03:39
521
原创 iOS开发之XML简介及XML数据解析
XML即可扩展标记语言(eXtensible Markup Language)。标记是指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用象XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从SGML中简化修改出来的。它主要用到的有XML、XSL和XPath等。上面这段
2016-04-06 16:04:47
1161
原创 Xcode安装插件
Xcode第三方插件的安装Alcatraz,这个是github上的一个开源项目,用来管理Xcode上的插件在终端上输入指令:curl -fsSL https://raw.github.com/supermarin/Alcatraz/master/Scripts/install.sh | sh如果要移除Alcatraz,只需要在终端输入如下指令:rm -rf ~/
2016-03-23 17:16:15
766
原创 新浪分享跳转网页返回/关闭网页按钮不显示的解决
在做第三方分享时,在检测到手机设备没有安装新浪微博客户端的时候自动跳转到新浪微博网页,可以进行分享,可是在用户不想分享了的时候,却找不到网页上的返回按钮,如下图,但是是点击左上角的时候确实还是可以离开网页,返回应用程序。那么如何把左上角的按钮显示出来?我用的是友盟分享,在官方文档里面找不到这个按钮的解决方法,于是在下载的SDK中各文件中寻找是否有显示的方法,结果很简
2016-03-23 10:55:13
1882
原创 CocoaPods的使用,安装第三方SDK
打开终端输入命令 cd 然后把工程名称拖到 cd 的后面,且把名称后倒数第一个“/”位置后面删除然后 创建podfile 文件终端输入:touch podfile 会在工程目录下看到生成的podfile 文件在终端搜索你要安装的SDK 输入命令:pod search BaiduMapKit 得如下结果
2016-03-10 10:50:46
2244
原创 NSDate和NSString的相互转换
用于uidate,picker。。+(NSDate*) convertDateFromString:(NSString*)uiDate{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init] ; [formatter setDateFormat:@"yyyy年MM月dd日"]; NSDate *date
2016-03-09 18:18:35
404
原创 UIImageView添加手势不响应的原因
一直想在 UIImageView 上添加手势,但是一直都不响应,一直找不到原因,原来只是因为少设置了一句代码:imageView.userInteractionEnabled = YES; // 用户与系统交互添加这句代码就行了,
2016-01-23 17:58:45
4173
原创 iOS裁剪图片成圆形
-(UIImage*) circleImage:(UIImage*) image{ UIGraphicsBeginImageContext(image.size); CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetLineWidth(context, 2); CGContextSet
2016-01-18 12:49:00
1930
原创 JSONKit在项目中使用设置(使用时报错解决方案)
在项目中经常会遇到解析json的情况,如果有同学想要解析JSON,那么JSONKit可以是一个不错的选择。git中JSONKit 的地址为:https://github.com/johnezang/JSONKit由于项目已经很久没有更新,仍然使用了MRC,因此在使用时需要做几处修改:1.把JSONKit设置为不支持arc的模式,在Build Phases ->Compile
2016-01-15 17:27:57
2164
原创 修改 app 在真机或虚拟机上的名称
在工程下 的 info -> Custom iOS Target Properties -> Bundle name 修改即可
2016-01-14 11:21:03
631
原创 使用微信登录出现错误:There is no registered handler for URL scheme weixin
使用微信:登录功能出现问题:There is no registered handler for URL scheme weixin‘解决方案:必须在真机上测试
2016-01-12 15:48:49
4037
原创 iOS 真机测试经常出现的不能运行的问题及解决方案
1,出现 错误:This application's application-identifier entitlement does not match that of the installed application. These values must match for an upgrade to be allowed.解决方法: 修改 General 下 Bundl
2016-01-12 11:09:46
2489
原创 UICollectionView 简单使用详解
UICollectionView 其实和UITableview差不多,学会简单的使用后,根据 UITableview 的各种使用逻辑,就能够轻松的实现你想要实现的各种功能,下面直接上代码啦1,ViewController.h 文件- (void)viewDidLoad { [super viewDidLoad]; self.view.background
2016-01-11 11:28:51
573
原创 iOS 数据库SQL 基础
数据库(Database):按照数据结构来组织、存储和管理数据 数据库基本是由表,关系,操作组成 在移动平台开发常用的是SQLite Database 也是数据持久化的一种 数据库是以表格的形式来存储数据的就像个表格 以表(table)为单位 表头的每一个列都是一个字段(column,属性)
2016-01-06 11:12:00
608
转载 密码中有特殊的字符IOS如何处理 IOS中URL包含中文参数的问题
由于url支持26个英文字母、数字和少数几个特殊字符,因此,对于url中包含非标准url的字符时,就需要对其进行编码。iOS中提供了函数stringByAddingPercentEscapesUsingEncoding对中文和一些特殊字符进行编码,但是stringByAddingPercentEscapesUsingEncoding的功能并不完善,对一些较为特殊的字符无效。
2016-01-06 10:11:58
1295
原创 字符串中删除指定字符
字符串中删除指定的字符 -(NSString *) stringDeleteString:(NSString *)str{ NSMutableString *str1 = [NSMutableString stringWithString:str]; for (int i = 0; i < str1.length; i++) { unichar c
2016-01-04 13:05:11
3604
原创 NSDate,NSString,int 数据类型相互转换
NSString 类型数据转换成 NSDate - (NSDate *)dateFromStringg:(NSString *)dateString{ NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm:
2015-12-30 18:34:09
3649
原创 对数组里面的数据进行升序降序排序
NSMutableArray *array = [[NSMutableArray alloc] initWithObjects:@"2019/03/01/",@"2013/03/02",@"2013/03/07",@"2014/03/01/", [NSNull null], nil nil]; array = (NSMutableArray *)[array sorted
2015-12-23 17:28:13
3841
原创 使用UITextField 的 leftView 时,没有出现的原因
UITextField 的 leftView / rightView 必须与 leftViewMode / rightViewMode 使用,即两者都要设置:UITextFieldViewModeNever, //从来不 UITextFieldViewModeWhileEditing, //将要编辑时 UITextFieldViewModeUnlessEditing,
2015-12-22 13:20:23
1445
原创 使用百度地图需要注意的问题
在使用百度地图的时候,首先按自己的需求下载相关的SDK ,把.framework相关的文件拖入工程中1,配置开发环境由于iOS9改用更安全的https,为了能够在iOS9中正常使用地图SDK,请在"Info.plist"中进行如下配置,否则影响SDK的使用。NSAppTransportSecurity NSAllowsArbitraryLoad
2015-12-20 20:11:05
1545
原创 如何设置 状态栏的 上的字体颜色
状态栏颜色设置:在infoplist里面设置属性,将View controller-based status bar appearance设为NO 状态栏字体的颜色只由下面的属性设定; 默认的黑色(UIStatusBarStyleDefault) 白色(UIStatusBarStyleLightContent) 在程序里 AppDelegate.m 设置:[[UIApplic
2015-12-16 17:06:11
1185
原创 iOS 开发获取当前时间 NSDate
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd hh:mm"]; NSDate* date = [NSDate date]; NSString* startTime = [dateFormatter strin
2015-12-15 10:42:59
1004
原创 iOS重新定义系统自带的方法,如 重定义 CGRectMake 和 CGPointMake 可以解决屏幕适配的问题
在网上找了些屏幕适配的方法,因为之前的适配把屏幕划分为不同比例的部分,还有就是使用 storyBoard ,由于是纯代码开发,又是在基本功能都完成了之后 才适配,就想着找一些简单的适配方法手机型号宽长iPhone 4s320480iPhone 5320568iPhone 5s320568iPhone
2015-12-10 17:34:39
5439
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人