自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (14)
  • 收藏
  • 关注

原创 一套基于NSPredicate的NSArray过滤框架

GHArrayFilter 一套NSArray的过滤Api,底层利用NSPredicate实现 基本函数 where(keypath) :如果是字符串数组,传nil,否则传model类的属性名query() :最终的执行函数,每次查询结尾必须调用 运算 运算函数中 可以传基本类型,其结果等同于NSNumber 可以传char ,const char,char []

2017-04-01 02:15:24 703

原创 一套高仿Python的Objective-C API

GHFunctionCode 根据python语言特点,编写的几个仿照python的api list模块 list_t ----> NSArray * mlist_t ----> NSMutableArray * [目前支持的api] join(str)->str lappend(id)->void mextend(list_t)->void minsert(id,in

2017-04-01 02:13:17 534

原创 将Objective-C变得简单————原创的模仿python的oc框架

自己封装了一个类Python的OC api,让开发的变得容易和简单 NSString是这样操作的 str_t str = @"abcdef"; str = str.upper(); str = str.lower(); str = @"i have a dream"; str = str.title(); list_t list = s

2017-03-24 13:54:43 1225

原创 iOS开发者:其实你还有很多东西需要学

iOS 新特性总结(since iOS6) iOS 6 1、废除viewDidUnLoad 收到内存警告需要到didReceiveMemoryWarning中处理 【小技巧】 -(void)didReceiveMemoryWarning { [super didReceiveMemoryWarning];//即使没有显示在window上,也不会

2016-11-17 17:14:48 5647

原创 一个Xcode插件

把一些常用的工具 集成到了Xcode里面 https://github.com/900116/GHGreatTools

2016-08-19 10:49:07 491

原创 IOS之字典转模型

iOS支持KVC,所以字典转模型变得超级简单。  我们希望我们写的字典转模型是通用的,这样我就想到用Category,加到Object里面。 然后创建一个Category @interface NSObject (gh_dict) //添加两个方法  //第一个方法,是一个类方法,可以通过字典转换成对象  +(instancetype)gh_objWithDict:(NSD

2016-08-02 18:30:34 1185

原创 自己开发的一个Xcode插件

由于项目的长期迭代,很多图片已经不使用了,但是项目太大,我们无法知道,这样也会增大包的大小 很多人都在问如何找到项目中,未使用的图片,所以我就开发了一款,找出项目未使用图片,并且可以删除。 插件安装方法 1、build插件项目,重启Xcode 2、弹出一个警告窗口,点击“load bundle” 3、Edit菜单会多出现一个选项,出现一个ClearUnUseImage的按钮 4

2016-06-01 14:53:17 516

原创 开发效率提升百分百的秘密

工欲善其事,必先利其器。磨刀不误砍柴工。我们先磨磨刀。 在实际开发中,Xcode相比eclipse有很多不尽如人意的地方,比如它不能自动导入头文件。自动提示有些鸡肋。代码注释不能像eclipse那样完善。不能生成父类已有的方法(eclipse有这个功能),这些不足之处,都会浪费我们一定的经历做一些重复性的工作。 但是好在,Xcode支持插件开发,这就诞生了很

2016-05-23 13:31:28 3825

原创 ios之GCD学习笔记(3)

/*      15、void dispatch_suspend(dispatch_object_t object)             会令队列挂起,但并不意味代码不会执行,它会继续执行未完成的任务             ,但是未开始的任务将不会被执行                   void dispatch_resume(dispatch_obje

2016-05-23 13:30:49 827

原创 ios之GCD学习笔记(2)

/*      10、void  dispatch_group_enter(dispatch_group_t group);      该方法可以主动让未完成的block任务数字+1            voiddispatch_group_leave(dispatch_group_t group);      该方法可以主动让未完成的block任务数字-1

2016-05-23 13:30:06 515

原创 ios之GCD学习笔记(1)

//1、 dispatch_once_t 用法     static dispatch_once_t onceToken;     //必须保证只有一个实力,才能确保只执行一次     dispatch_once(&onceToken, ^{         //单例代码     });                    //2、dispa

2016-05-23 13:29:33 558

原创 IOS之日历与提醒

IOS利用EventKit可以实现添加提醒和添加事件(日历)的功能 EKEventStore类 该类负责日历和提醒事件的管理,可以简单理解为数据库,可以对事件进行增删改查。 查询今天暂且不表,只说如何添加事件和提醒。  因为它就像数据库一样,频繁的开启,关闭会影响效率,所以如果你的程序需要频繁操作日历和提醒, 建议仅生成该对象一次,仅用一个对象进行操作。 @interface

2016-05-23 13:28:31 4311

原创 如何把运行期警告转移到编译期的几个小技巧

记得之前有篇帖子说过,应该尽量让运行期的错误,提升到编译期,这样就可以在编译时期解决错误,不需要在进行繁琐,费时的bug调试。但是在Objective-C中,我们如何做到呢。今天我就把我已经知道的一些ios的关键字和一些特殊的语法总结一下,以便大家来更好的优化代码,避免更多的错误。 1、__nullable和__nonnull 在Xcode6.3中,苹果引入了一个oc的

2015-11-23 14:08:06 711

原创 IOS程序员应该知道的一些第三方框架

IOS程序员应该知道的一些第三方框架 改变你的开发效率 Http协议 AFNetworking 基于NSURLConnection的一个轻量级的http协议框架。 MKNetworkKit 也是一个用户很多的网络框架 Reachability 可以监听网络状况 Socket CocoaAsyncSocket 使用CFSocket与runloop实现

2015-11-19 11:17:30 1003

原创 23种设计模式之我见(1)

23种设计模式之我见(1) 本文是我对设计模式的理解,旨在与大家分享心得,探讨心得。希望可以共同探讨。 工厂方法模式 定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。 其实工厂模式,可以分成三种,简单工厂模式,工厂方法模式和抽象工厂模式。 对于简单的工厂模式,其实有一个类方法(或静态方法就可以实

2015-11-18 11:52:44 617

转载 AFNetwork作用和用法详解

AFNetwork作用和用法详解 AFNetwork是一个轻量级的网络请求api类库。是以NSURLConnection, NSOperation和其他方法为基础的。 下面这个例子是用来处理json请求的: NSURL *url = [NSURL URLWithString:@"https://alpha-api.app.net/stream/0/posts/stream/globa

2015-11-18 11:44:56 637

原创 如何写程序(1)

本文是鄙人在学习《代码大全2》的一些心得和笔记,以及自己的一些理解,在此与各位码农,共同探讨和学习。 我想先从如何写程序来深入浅出的讨论编程的一些事儿,现在我们一起开始吧。  这篇文章对应书的第六章的前面的部分,有兴趣的可以看下原著。 1、如何应用ADT。 1.1 ADT是什么? ADT其实就是将数据和操作联合起的集合,对于面向对象编程来讲,说白了就是类,对于非面向对象程序来讲就是结

2015-11-18 11:44:08 507

原创 IOS粒子系统的实现

IOS粒子系统的实现  IOS的CoreGraphic可以实现简单的粒子系统的效果 我们来简单介绍一下,实现粒子系统其实非常简单,比较复杂的是其参数的设置 实现粒子系统主要用到两个类 CAEmitterLayer和CAEmitterCell  先介绍一下CAEmitterLayer(发射层) 其主要的属性有 @property(copy) NSArray *emitt

2015-11-18 11:43:12 1446

原创 IOS开发指南读书笔记12(IOS数据持久层的建立4)

IOS开发指南读书笔记12(IOS数据持久层的建立4)  建立CoreData需要首先建立一个模型文件 生成的后缀是xcdatamodeid,但是编译之后在沙盒的momd文件 首先Add Entity 然后Add Attribute(注意,属性名必须是小写)   然后生成ManageObject 建立CoreDa

2015-11-18 11:42:07 934

原创 IOS开发指南读书笔记11(IOS数据持久层的建立3)

IOS开发指南读书笔记11(IOS数据持久层的建立3) 基于SQLite的数据持久的实现 建立SQLite数据管理 //sqlite数据管理 @interface SQLiteNoteDao : NSObjectBaseNoteDao> {  sqlite3* _db;  } #define DBName @"Notes.sqlite3"  @end 

2015-11-18 11:41:14 468

原创 IOS开发指南读书笔记10(IOS数据持久层的建立2)

IOS开发指南读书笔记10(IOS数据持久层的建立2) 基于对象归档的实现 建立对象归档数据管理类 实现归档数据持久的对象实现NSCoding协议 其属性也必须是基本类型或者实现NSCoding协议的对象 我们堆Note做如下更改添加这两个方法 -(void)encodeWithCoder:(NSCoder *)aCoder {     //编码

2015-11-18 11:40:10 480

原创 OS开发指南读书笔记9(IOS数据持久层的建立1)

IOS开发指南读书笔记9(IOS数据持久层的建立1)  建立IOS数据持久层,有以下几个方式 1、文本文件 plist/Xml/Json/NSUserDefault(等同于plist) 2、对像归档,反归档 3、SQLite数据库 4、Core Data 1、Xml(略)、NSUserDefault(略)\Json略 plist实现 plist 根节点为NSArra

2015-11-18 11:39:22 590

原创 IOS开发指南读书笔记8(AutoLayout) 2

IOS开发指南读书笔记8(AutoLayout) 其原理类似Android的RelativeLayout,适用于IOS6以上。如果不同约束有冲突,回遵循优先级的高的约束。 一、可以设定的约束有 1、高度、宽度 至少,等于,至多一个数值 至少,等于,至多为其他控件的宽度,高度 2、对齐方式 与父控件头部(左边Leading)对齐,尾部(右边Trailing)对齐,顶部对

2015-11-18 11:38:37 536

原创 IOS开发指南读书笔记7(ScrollView)

IOS开发指南读书笔记7(ScrollView) 1、ContentSize   2、CotentInset   3、ContentOffset

2015-11-18 11:37:52 533

原创 IOS开发指南读书笔记6(UIView家族)

IOS开发指南读书笔记6(UIView家族)  UIView家族   二、视图分类 1、控件 继承UIControl,能够响应用户高级事件。 2、窗口 UIWindow,一个IOS应用只有一个Window对象。 3、容器 UIScrollView,UIToorBar,UITableView,UICollectionView。 4、显示视图 UIImageView,UI

2015-11-18 11:37:05 740

原创 IOS开发指南读书笔记5(IOS 常用设计模式)

IOS开发指南读书笔记5(IOS 常用设计模式) 1、单例模式 构造方法 @interface Singleton : NSObject +(Singleton*)sharedInstance; @property(nonatomic,strong) NSString* singletonData; @end @implementation Sin

2015-11-18 11:36:15 563

原创 IOS开发指南读书笔记4(IOS API分类)

IOS开发指南读书笔记4(IOS API分类)  1、IOS 体系架构 2、Cocoa Touch层 3、Media层 4、Core Services层   5、Core OS

2015-11-18 11:35:23 473

原创 IOS开发指南读书笔记3(视图的生命周期)

IOS开发指南读书笔记3(视图的生命周期) 1、视图的生命周期 ViewDidLoad方法只会调用一次,而viewWillAppear:、viewDidAppear:、viewWillDisAppear:、viewDidDisAppear:回调用多次。 低内存的情况下,IOS会调用didReceiveMemoryWarning:和viewDidUnload:,到ios6.0,

2015-11-18 11:34:33 522

原创 IOS开发指南读书笔记2(应用程序的生命周期)

1、程序的五种状态 Not Running:未运行。 Inactive:前台非活动状态。处于前台,但是不能接受事件处理。 Active:前台活动状态。处于前台,能接受事件处理。 Background:后台状态。进入后台,如果又可执行代码,会执行代码,代码执行完毕,程序进行挂起。 Suspended:挂起状态。进入后台,不能执行代码,如果内存不足,程序会被杀死。 2、五态的关系  

2015-11-18 11:33:42 663

原创 IOS开发指南读书笔记1(Xcode的基本使用)

IOS开发指南读书笔记1(Xcode的基本使用) 1、用Xcode创建工程 Product Name:工程名字 Organization Name:组织名字 Company Identifier:公司标识。一般用域名倒叙。 Bundle Identifier:捆绑标识,由Product Name+Company Identifier组成。发布到AppStore会用到它。 Cla

2015-11-18 11:32:25 684

原创 IOS滤镜处理

IOS滤镜处理  需要InputBackgroundImage和InputImage的有 CIAdditionCompositing  影像合成 CIColorBlendMode   混合模式 CIColorBurnBlendMode  燃烧混合模式 CIColorDodgeBlendMode 避免混合模式 CIDarkenBlendMode  CIE

2015-11-18 11:31:47 1179

原创 Objective-C基础之常用简单设计模式

Objective-C基础之常用简单设计模式 1、模型-视图-控制器 (1)模型 其实这是一个不是很想谈论的问题,这个问题经常被讲,都讲烂了,模型谁都会建立,但是最好与数据源匹配。模型类不要将控制器引入,这不是一个好的代码,因为我们希望它和控制器的耦合度尽量低。但也许会有一个委托,委托与控制器间通过协议进行关联,这样我们可不比指明控制器的具体类型,将会有好的拓展性,我们的模块具有相对

2015-11-18 11:30:31 698

原创 Objective-C 基础之强大的字面量

Objective-C 基础之强大的字面量 Objective-C对字面量的支持其实是很到位的。看到C#的字典可以用[]来取值就觉得很爽,现在发现Objective-C也非常的不错,接下来说一说Objective-C的字面量。 1、用字面量初始化字符串(NSString) 一般我们初始化字符串都是这样写 NSString* str = [NSString stringWithS

2015-11-18 11:29:41 604

原创 iOS-openGLES程序制作基本步骤以及某些API

最近研究了一下ios下的openGLES,给大家分享一下学习经验 openGLES就是openGL的阉割版,就是作者删除了一些自认为没多大作用的API。 openGL是啥,这里就不废话去讲了,我们直奔主题。 我们做OpenGLES的ios开发必须导入两个框架 QuartzCore.framework以及OpenGLES.framework(该框架的所有api都是c语言形式的) 本文分

2015-11-18 11:28:14 1194

原创 Objective-C高级编程之内存管理(2)

混合ARC与非ARC 一个app可以设置不同文件以不同形式ARC或非ARC进行混合编译。 只需要在文件后面的编译标签上标注-fobj-arc/-fno-objc-arc ARC修饰符 当设置ARC有效时,其类型必须设定所有权修饰符,而所有权修饰符有4种 __strong  __weak __unsafe_unretained __autoreleasing 可

2015-01-24 12:54:20 681

原创 Objective-C高级编程之内存管理(1)

1、什么是ARC 顾名思义,自动引用计数是指内存管理中采用自动计数的技术。 苹果官方文档:在Obj-C中,采用ARC,让编译器进行内存管理,就无需键入release和retain相关代码,可以降低崩溃和内存泄露风险的同时,很大程度减少开发的工作量。 使用前提:Xcode 4.2以上 LLVM3.0以上 设置编译器ARC有效。 2、RC的内存管理和思考方式 有一个办公室,里面有

2015-01-24 12:12:00 680

原创 C++进阶教程(含C++11)(1)变量与基本类型1

1、C++中的基本类型 类型                                含义                                大小(bit) bool                              布尔类型                            未定义 char                              

2014-12-13 00:29:00 1012

原创 IOS强化知识(2)@class的运用

1、为什么使用@class    与C++语言一样,OC也需要一个头文件(h文件),一个实现文件(m文件)。当你引用其他类的时候,你就需要引入头文件。虽然引用头文件没有任何问题,但是如果你不想知道这个类的细节,只想知道它仅仅是个类的话,引用头文件可能显得多余,而且会增加编译的时间。用@class的话,你可以不引入任何头文件,就能让编译器知道某个它是一个类。例如:       @cl

2014-10-24 22:07:18 1035

原创 IOS强化知识(1)认识Objective-C

一直想写一个整体的Objective-C的帖子,总是没时间,所以我想把大知识变小,小知识变更小,每天写一点点,来把自己学习的东西与大家分享,好了废话不多说。 1、一门动态的语言OC     Object-C(以下简称OC)是一门面向对象语言,这恐怕学过编程的人都知道。但是OC跟其他语言相比,显得格格不入。因为它是一门消息结构语言,而非函数调用。所以语法上显得很怪,通常是这样:

2014-10-22 22:08:03 728

原创 每天一个OpenGL程序 第六篇 图形的组合绘制

#include #include #include #include // 练习6.1 基本图形的组合绘制 void render(); void initGL(); void main(int argc,char** argv) { glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB); glutInitWindowPosi

2013-08-26 09:42:09 2088

ios上二级的tableview列表

基于ios的一个折叠列表,可以打开关闭,很简单,很易用

2013-08-06

iOS版ViewPager

基于IOS的一个ViewPager控件,自己写的,封装的比较简单和实用

2013-04-17

基于IOS吐司提示框

基于IOS的一个吐司提示框,简单实用,希望大家下载尝试

2013-04-22

一个闪烁的圆圈控件,主要用于定位,ios上的

一个闪烁的圆圈控件,主要用于定位,ios上的

2013-08-02

ios的自动以RadioButton

基于IOS的一个RadioButton控件

2013-03-08

基于ios的树形邀请控件

基于ios的树形邀请控件 思路清晰 简单 使用方便

2013-04-26

ios左边导航栏(类似人人)

ios左边导航栏 类似人人网的那个导航 用起来很方便

2013-04-10

OpenGL超级宝典(完美目录版)Part1

经典的OpenGL蓝宝书 分三个分卷 已经做了完美的目录编制 使用方便

2013-08-25

基于IOS的一个GridView简单实用

基于IOS的一个GridView简单实用,感觉很不错,大家可以看看

2013-04-22

ios侧边导航栏

基于IOS的一个侧边导航栏的Demo 使用起来很方便

2013-04-10

ios的自定义表情键盘

iOS 表情控件 表情键盘 UI 弹出视图

2013-04-26

OpenGL编程指南第七版中文版,有完美的自己编制的目录

OpenGL编程指南第七版中文版,有完美的自己编制的目录

2013-08-25

OpenGL超级宝典(完美目录)Part2

OpenGL蓝宝书 总共三个分卷 自己编制了完美目录 使用方便

2013-08-25

OpenGL超级宝典(完美目录)Part3

OpenGL蓝宝书 总共三个分卷 自己编制了完美目录 使用方便

2013-08-25

空空如也

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

TA关注的人

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