自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 收藏
  • 关注

转载 svn 提交报xcrun: error: active developer path ("/Applications/Xcode.app/Contents/Developer") does not e...

svn 提交报如下错误 : xcrun: error: active developer path ("/Applications/Xcode.app/Contents/Developer") does not existxcrun: error: active developer path ("/Applications/Xcode.app/Contents/Develop...

2017-10-19 15:14:00 222

转载 xcode运行项目报error: Illegal Configuration: Compiling IB documents for earlier than iOS 7

github 下载一个demo 运行报如下错误:Illegal Configuration: Compiling IB documents for earlier than iOS 7大致的意思就是:编译了ios7之前的xib 文件出现此情况一般就是当前xcode 支持的最低版本不支持 项目配置的部署版本 只需要更改下部署版本为当前xcode支持的最...

2017-10-19 15:11:00 204

转载 ios 指定页面禁用第三方键盘,使用系统的键盘

因为项目需要,需要在添加银行卡和提现页面使用数字键盘, 如果用户没有安装第三方键盘是没啥大问题的,但是如果用户手机安装了第三方的键盘的话,有时候会无法调用起第三方的数字键盘,或者第三方键盘样式不符合,这个时候系统的数字键盘是比较符合我们的需求的。那么我们如何在特定的页面使用系统自带的数字键盘呢?其实简单我们只需要实现UIApplicationDelegate 的如下代理方法即可:...

2017-10-19 15:03:00 701

转载 ios自定义数字键盘

因为项目又一个提现的功能,textfiled文本框输入需要弹出数字键盘,首先想到的就是设置textfiled的keyboardType为numberPad,此时你会看到如下的效果:但是很遗憾这样设置虽然出现了数字键盘,但是对于我们提现的这个功能来说是需要小数的,所以需要一个小数点 但是使用上面的键盘显然不能满足我们的需求,那么应该如何解决这样的问题呢? ...

2017-10-19 14:40:00 171

转载 malloc: *** error: incorrect checksum for freed object - object was probably modified after being fr...

发生这种错误的原因是: 操作一个已经被释放的指针 访问一个已经被释放的指针例如:iOS8加载系统相册库的时候 用到很多系统的block 为了避免强引用 我们会创建一个弱指针 指向self但是因为加载相册是异步操作的 所以如果使用弱引用 就会报上面的错误解决办法:在block中对当前的弱引用 再进行强引用即可转载于:https://www.cn...

2017-09-30 14:43:00 5577

转载 Undefined symbols for architecture arm64: "_OBJC_CLASS_$_WKWebView", referenced from: objc-c

出现:Undefined symbols for architecture arm64: "_OBJC_CLASS_$_WKWebView", referenced from: objc-c错误,一般的原因就是因为没有导入WebKit 框架在项目配置中添加系统类库:WebKit.framework 就可以解决此问题转载于:https://www.cnblogs.com/...

2017-09-30 14:42:00 773

转载 swift项目中使用oc框架不提示方法的解决办法

最近在做一个swift的项目,但是用到了一个oc的刷新框架,建立了桥接后导入框架发现不提示方法名称,百度了好久最好找到解决方法。1.第一步首先删除 此目录下的这个文件夹:~/Library/Developer/Xcode/DerivedData2.重启xcode试试,如果还不提示,删除此目录下的这个文件:~/Library/Caches/com.apple.dt.Xcode3...

2017-05-22 15:53:00 673

转载 UICollectionView的隐式动画的问题

UICollectionView在reloadItems或者更新子控件布局的时候,默认会附加一个隐式的动画有时候我们并不需要这个动画,如何解决呢?下面两种方法都可以帮你去除这些动画://方法一[UIViewperformWithoutAnimation:^{ 在内部相关操作}]; //方法二 [UIViewsetAnimations...

2017-05-17 18:53:00 205

转载 SYRefresh 一款简洁易用的刷新控件 可扩展 支持swift oc版本

SYRefreshoc 版本地址: https://github.com/shushaoyong/SYRefreshswift 版本地址:https://github.com/shushaoyong/SYRefreshForSwift一款简洁易用的刷新控件示例程序:默认刷新控件使用方法://添加头部刷新控件ScrollView.sy_heade...

2017-05-17 18:38:00 76

转载 一款简洁实用方便的相册图片浏览器

因为项目中经常要用到图片浏览器,所以最近利用空闲时间做了一款简洁的相册图片浏览器,支持浏览图片,视频,兼容ios7。地址:https://github.com/shushaoyong/SYPhotoBrowser下面是示例代码:使用方法1.展示图片SYPhotoGroupViewController *vc = [[SYPhotoGroupViewContro...

2017-05-08 11:52:00 128

转载 UIScrollView添加阴影没有效果解决办法

之所以添加阴影没有效果是因为 UIScrollView的clipsTobounds默认是YES,其实阴影是加上了 但是因为设置了这个属性为yes 就会导致阴影显示不出来解决办法只需要把这个属性改为NO 就可以显示了 但是 这样做了之后scrollview的外面的内容也会显示出来,但是一般情况下是没有问题的。转载于:https://www.cnblogs.com/syio...

2017-04-09 14:38:00 438

转载 Undefined symbols for architecture arm64: "_OBJC_CLASS_$_WKWebView", referenced from: objc-c

发现这种错误解决办法:在项目配置中添加系统类库:WebKit.framework转载于:https://www.cnblogs.com/syios/p/6401099.html

2017-02-15 13:44:00 555

转载 倒计时功能的实现

在ios中我们在做验证码的时候 就少不了要用到倒计时 所以 这里就介绍两种实现倒计时的方法第一种是使用NSTimer方式实现:@implementation SYViewController{ int totalSeconds; NSTimer *downTimer; UILabel *labelText;}- (void)vie...

2016-10-01 10:15:00 155

转载 NSPredicate 的使用

NSPredicate是什么?NSPredicate 是预测的意思 但是我们常翻译成谓词它可以干什么?使用NSPredicate可以定义模糊查询条件 根据一定的条件 我们就可以从一个数组中快速找出 符合一定条件的元素对象本次的示范我们沿用上次讲的NSSortDescriptor 的使用里面的代码 我们只需要稍微的修改一下 导航栏右边的按钮 为‘搜索年龄大于20的对象...

2016-09-30 18:13:00 149

转载 NSSortDescriptor 的使用

NSSortDescriptor 是什么 ?你可以将它看做是对一个排序规则的描述者 因为我们可以使用它来对我们数组中的对象进行排序操作假设现在有这样一个需求: 数组里面有十个Person对象 每一个Person对象有自己的名字年龄和分数 我们需要对数组里面的这十个对象做排序操作 规则如下: 1.首先按照年龄排序 2.如果年龄相同按照分数排序 要实现这...

2016-09-29 10:04:00 128

转载 Block知识点总结

block的作用 block用于保存一段代码 在适当的时候再使用 它是一种数据类型block的定义格式:返回值 (^block变量名)(形参列表) = ^(形参列表) { 需要执行的代码};调用block 直接用block 变量名后面跟上小括号 小括号里面...

2016-09-27 11:51:00 140

转载 iOS中获取cell中webview的内容尺寸

最近项目中遇到在cell中获取webView的内容的尺寸的需求 实现的思路其实很简单 就是通过执行js 获取尺寸即可 为了后面用着方便我直接封装了一个HTML的cell 起名就叫STHTMLBaseCell 下面是实现代码:#import "STBaseTableViewCell.h"@class STHTMLBaseCell;@protocol STHtmlBase...

2016-09-22 16:14:00 104

转载 iOS 商品倒计时 限时特价 限时优惠 功能的封装

最近项目中多个页面用到了 商品特价倒计时的功能 为了偷懒 于是自己封装了一个限时抢购 倒计时的view 代码实现如下:定向价 限时特价 模型代码实现:#pragma mark 商品定向价模型@interface STGoodsOrientationPrice : STBaseModel/**定向价**/@property (nonatomic, cop...

2016-09-12 23:04:00 206

转载 RAC学习笔记

RAC学习笔记ReactiveCocoa(简称为RAC),是由Github开源的一个应用于iOS和OS开发的新框架,Cocoa是苹果整套框架的简称,因此很多苹果框架喜欢以Cocoa结尾。在学习ReactiveCocoa之前,先学习一下概念ReactiveCocoa 是一套开源的基于Cocoa的FRP框架 .FRP的全称是Functional Reactive Programm...

2016-09-12 22:33:00 191

转载 自定义iOS 中推送消息 提示框

看到标题你可能会觉得奇怪 推送消息提示框不是系统自己弹出来的吗? 为什么还要自己自定义呢?因为项目需求是这样的:最近需要做 远程推送通知 和一个客服系统 包括店铺客服和官方客服两个模块 如果有新的消息推送的时候 如果用户当前不在客服界面的时候 要求无论是在app前台 还是app退到后台 顶部都要弹出系统的那种消息提示框这样的需求 我们就只能自定义一个在app内 弹出消息提...

2016-09-11 07:44:00 428

转载 如何处理程序闪退的问题

首先大家要明确: 我们调试阶段的崩溃就是真机的闪退一般程序的崩溃主要有以下几个原因:1.调用了一个对象不存在的方法导致的 这是最常见的错误2.数组越界 没有做判断处理 也会导致程序崩溃3.Tableview 数据源方法 返回为nil的cell(解决办法就是返回一个系统的cell) 所以这里建议大家在Tableview 数据源和代理方法中对模型数据对做一次判断 防...

2015-09-26 21:57:00 860

转载 block传值和代理传值的异同点

delegate:1,“一对一”,对同一个协议,一个对象只能设置一个代理delegate,所以单例对象就不能用代理;2,代理更注重过程信息的传输:比如发起一个网络请求,可能想要知道此时请求是否已经开始、是否收到了数据、数据是否已经接受完成、数据接收失败block:1:写法更简练,不需要写protocol、函数等等2,block注重结果的传输:比如对于一个事件,只想知道成功或者失败,并不需...

2015-09-26 21:40:00 96

转载 CP/IP,SPDY,WebSocket 三者之间的关系

按照OSI网络分层模型,IP是网络层协议,TCP是传输层协议,而HTTP是应用层的协议。在这三者之间,SPDY和WebSocket都是与HTTP相关的协议,而TCP是HTTP底层的协议。一、HTTP的不足HTTP协议经过多年的使用,发现了一些不足,主要是性能方面的,包括:HTTP的连接问题,HTTP客户端和服务器之间的交互是采用请求/应答模式,在客户端请求时,会建立一个HTTP连接,然后...

2015-09-15 11:29:00 115

转载 CocoaPods安装使用以及常见问题

什么是CocoaPodsCocoaPods是iOS项目的依赖管理工具,该项目源码在Github上管理。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和第三方开源库的时间。在使用CocoaPods之前,开发项目需要用到第三方开源库的时候,我们需要1.把开源库的源代码复制到项目中2.添加一些依赖框架和动态库3.设置-ObjC,-fno-objc-...

2015-09-15 10:33:00 347

转载 IOS从视频中获取截图

从视频中获取截图:NSString *movpath =[[NSBundle mainBundle] pathForResource:@”iosxcode4″ ofType:@”mov”];mpviemController =[[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL fileURLWithPat...

2015-09-14 17:59:00 122

转载 iOS宏定义的使用与规范

宏定义在很多方面都会使用,例如定义高度、判断iOS系统、工具类,还有诸如文件路径、服务端api接口文档。为了对宏能够快速定位和了解其功能,我们最好在定义的时候将其放入特定的头文件中 定义尺寸类的宏 DimensMacros.h//状态栏高度#define STATUS_BAR_HEIGHT 20//NavBar高度#define NAVIGATIO...

2015-09-11 08:51:00 70

转载 单例模式ARC和非ARC

ARC环境下的单例模式:static id _instance = nil; + (id)allocWithZone:(struct _NSZone *)zone { if (_instance == nil) { static dispatch_once_t onceToken; ...

2015-09-10 14:32:00 88

转载 如果根据键盘的frame始终让一个控件始终在键盘的顶部

我们发现很多时候系统提供的键盘功能有限 有些功能无法实现,所以我们通常的做法就是自定义一个工具条放在键盘的顶部。那么我们如何知道键盘的frame呢? 这个时候就需要监听键盘发出的通知,在ios中当键盘自身的frame发生改变的时候 它会发出以下通知:键盘的frame(位置)即将改变, 就会发出UIKeyboardWillChangeFrameNotification 所以我们可以...

2015-09-04 10:45:00 97

转载 Block的用法

定义block无参数无返回值的block 定义格式:void (^block)() = ^{NSLog(@"block");};有参有返回值的block 定义格式 int (^sum)(int,int) = ^(int a,int b){return a+b;};当然如果block作为成员属性的时候 定义的格式如下:@property (nona...

2015-09-03 20:37:00 65

转载 IOS开发技巧快速生成二维码

随着移动互联网的发展,二维码应用非常普遍,各大商场,饭店,水果店 基本都有二维码的身影,那么ios中怎么生成二维码呢? 下面的的程序演示了快速生成二维码的方法:在ios里面要生成二维码,需要借助一个框架:#import <CoreImage/CoreImage.h> 所有首先我们需要在我们的项目中引入这个框架下面是核心代码:准备工作:首先在storyboard里...

2015-09-02 19:17:00 151

转载 UIApplication和delegate代理

所有的移动操作系统都有个致命的缺点:app很容易受到打扰,比如一个来电或者锁屏都会导致app进入后台甚至被终止还有很多其他类似的情况会导致app受到干扰,在app受到干扰时,会产生一些系统事件,这是UIApplication会通知他的delegate对象 让delegate对象来处理这些系统事件常用的代理方法@implementation AppDelegate/...

2015-09-01 09:48:00 54

转载 远程推送通知

什么是远程推送通知就是从远程服务器推送给客户端的通知 此操作需要联网远程推送服务 又称为APNs (Apple Push Notification Services)为什么需要远程推送通知?传统获取数据的局限性:通过上图可以看到,张三如果想要发送消息给李四 首先需要向服务器发送一条消息,然后由服务器将消息推送给李四 反之一样但是有一个问题就是:如果张三要...

2015-09-01 01:48:00 93

转载 本地推送通知

推送通知的作用:可以让不在前台运行的app 告知用户app内部发生了什么事情推送通知的呈现效果:1.在屏幕顶部显示一条横幅2.在屏幕中间弹出一个UIAlertView3.锁屏状态下也可以呈现4.呈现推送通知的同时还可以更新app图标的数字5.播放音效用户接收的通知 都会展示在通知中心 如何打开通知中心:从屏幕顶部往下滑 就可以打开通知中心推送...

2015-08-31 21:46:00 54

转载 Const的用法

宏和const的区别:1.宏执行的是替换操作,这也就意味着会在内存中开辟多个临时空间 这样显然不是很好2.宏不可以修改const :用const修饰的变量 为常量 不能修改,在内存中只有一份内存用const修饰的全局变量 为全局常量const修饰指针变量:const int *p = NULL;int const *p = NULL;上面两个都表...

2015-08-31 14:49:00 50

转载 UIScrollView子控件的布局

scorllView内部子控件添加约束的注意点:1.子控件的尺寸不能通过UIScrollView来计算*比如可以设置固定值 (width==100 height ==100)*比如可以相对于UIScrollView以外的其他控件来计算尺寸2.UIScrollview的frame应该通过子控件以外的其他控件来计算3.UIScrollView的contentSize通过子...

2015-08-31 13:44:00 120

转载 Copy和MutableCopy

实现拷贝的方法-copy:1.只会产生不可变的副本对象(比如:NSString)2.[NSMutableString copy] 产品一个不可变的nsstring对象-mutaleCopy:1.只会产生可变的副本对象(比如:nsmutablestring)//得出结论:只要是通过NSMutable这种可变的对象调用copy方法和mutalecop...

2015-08-31 01:21:00 52

转载 Static的作用

Static的作用:一.修饰局部变量1.让局部变量只初始化一次2.局部变量在程序中只有一份内存3.并不会改变局部变量的作用域 ,仅仅是改变了局部变量的生命周期(直到程序结束,这个局部变量才会销毁)二、修饰全局变量1.全局变量的作用域仅限于当前文件说到这里,还有说一个注意点:那就是oc中不能在同时在两个有关联的文件中定义相同的全局变量还有就是ex...

2015-08-31 00:39:00 38

转载 控制器的父子关系建立原则

概念: 如果2个控制器的view是父子关系(不管是直接还是间接的父子关系) 那么这2个控制器也应该为父子关系例如:[a.view addSubview:b.view];[a addChildViewController:b];或者[a.view addSubview:otherView];[otherView addSubview:b.view]...

2015-08-28 15:49:00 130

转载 如何将oc代码转换成运行时代码

// 运行时 其实就是oc的底层 平时写的代码 最终都是转成底层的运行时代码以下面程序为例子:如果我们想要看我们的main.m文件底层转换成了怎样的运行时代码 ,我们可以这样做。1.打开终端 ,输入cd 切换到我们当前项目所在目录2.然后ls -l 看一下当前目录下面的文件3.然后输入命令:clang -rewrite-objc main.m 然后回车...

2015-08-27 18:57:00 166

转载 IOS中对象的归档

ios提供了两个类 NSKeyedArichiver NSKeyedUnarchiver对自定义对象进行归档 和解档操作归档常见方法- (void)encodeObject:(id)objv forKey:(NSString *)key;- (void)encodeConditionalObject:(id)objv forKey:(NSString *)key;- (void)...

2015-08-27 15:11:00 87

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除