iOS开发-NSPredicate

Cocoa中谓词(Predicate)提供了一个通用的查询方式处理数据,可以获取和指定数据的过滤形式,Cocoa实际开发中可以是使用NSPredicate及其父类NSComparisonPredicate和NSCompoundPredicate.其风格类似于SQL查询语言和正则表达式的混合体,提供了具有表现力的,自然语言界面来定义一个集合被搜寻的逻辑条件。一般来说稍微操作过数据库基本上很容易理解其...
iOS开发 NSPredicate

写iOS SDK注意事项

我发现即使是像腾讯、小米这样的大厂提供的 SDK 质量在规范上也有很多问题,而且包括我以及我身边的很多朋友都被恶心到了,所以我就把这些注意事项总结出来,希望大家不要犯同样的错误。注意事项一:所有类名都应该加前缀说明:没有前缀的类名有冲突的风险。Bad Case:微信分享的 SDK,文件名: WXApiObject.h ,代码如下,其中 BaseReq 类和 BaseResp 类都没有加前缀。@in...
iOS开发 iOS SDK

iOS开发-plist文件增删改查

plist第一次看到这个后缀名文件的时候感觉怪怪的,不过接触久了也就习以为常了,plist是Property List的简称可以理解成属性列表文件,主要用来存储串行化后的对象的文件。扩展名为 .plist ,因此被称为 plist文件,xCode中默认的是一种树状的结构展现出来数据,可视化的动态增删改查,非常人性化,不过最终的结果是以XML形式存储的,Plist文件可以用于存储用户的一些设置信息,...
plist文件 iOS开发

IOS中block和代理

从ios4开始引入block,就是代码块,结构类c语言基本结构 返回值 (^block名称)(参数):int(^BlockName)(int):返回值为int型,参数是一个int值的叫BlockName的block我们使用一个block时://代码例子 int(^BlockExample)(int); BlockExample=^(intn){returnn*2;}; intresult=B...
IOS开发 block

ReactiveCocoa函数响应式编程在IOS平台下的实践

本文介绍了函数响应式编程思想,通过信号来记录值的变化,同时信号可以被叠加、分割或合并,来处理复杂逻辑,从而实现函数响应式编程。同时本文还介绍了在IOS平台下基于函数响应式编程思想的第三方开源库ReactiveCocoa及其实践。除了介绍ReactiveCocoa的具体编程实践,还介绍了MVVM设计模式,它不同于传统的MVC设计模式,具有低偶和、可重用性、独立开发、可测试性等优点。关键词 函数响应式...
IOS平台 ReactiveCocoa

iOS category解析

category的真面目objc所有类和对象都是c结构体,category当然也一样,下面是 runtime 中category的结构:struct_category_t{ constchar*name;//1 struct_class_t*cls;//2 conststruct_method_list_t*instance_methods;//3 conststruct_method_l...
iOS 开发 category解析

iOS开发-从16进制颜色中获取UIColor

目前iOS中设置UIColor只能使用其枚举值、RGB等方法,不能直接将常用的16进制颜色值直接转为UIColor对象,所以写了点代码,将16进制颜色值转为UIColor。代码如下,//头文件 #importFoundation/Foundation.h #importUIKit/UIKit.h @interfaceTextServcie:NSObject +(UIColor*)getCo...
UIColor iOS开发

IOS 简洁输入框的实现

我们在朋友圈,qq空间或微博的app看到这样的操作,点击回复,在视图的下面立即显示一个输入框。输入我们的文字后点击发送就可以。那么这个小小的输入框是怎么实现的呢我也试着自己写了一个小小对话框,先看一下样式主要的功能有有一个placeholder的文字作为提示,点击输入文字后消失,当删除后文字为空的时候,重新出现。文本框下面有一条蓝色线表示输入的框范围,类似我们微信里面的那个绿色的输入框文本框需要跟...
输入框 IOS开发

iOS:原生二维码扫描

做iOS的二维码扫描,有两个第三方库可以选择,ZBar和ZXing。今天要介绍的是iOS7.0后AVFoundation框架提供的原生二维码扫描。首先需要添加AVFoundation.framework框架到你工程中build phase的Link Binary With Libraries之下,然后就可以开始了。一、做好准备工作,搭建UIUI效果如图IBOutlet、IBAction如下:@pr...

IOS开发-正则表达式的使用方法

前言:在表单验证中,我们经常会使用到正则,因为我们需要用它来判断用户输入的字符是否为合法的,如果是不合法的,那么应该提示用户输入错误,并不让提交至服务器。我们也可以通过正则表达式,从用户输入的字符串中过滤并获取我们想要的特定部分。总而言之,正则表达式是非常强大的。方法一、谓词(NSPredicate)创建正则表达式使用它来判断用户输入的字符串是否为合法的://编写正则表达式:只能是数字或英文,或两...
IOS开发 正则表达式