- 博客(45)
- 资源 (10)
- 收藏
- 关注
原创 IOS开发-GCD详解
1,同步异步,并行串行各种队列执行效果有4个术语比较容易混淆:同步、异步、并发、串行同步和异步决定了要不要开启新的线程同步:在当前线程中执行任务,不具备开启新线程的能力异步:在新的线程中执行任务,具备开启新线程的能力并发和串行决定了任务的执行方式并发:多个任务并发(同时)执行串行:一个任务执行完毕后,再执行下一个任务1.0 核心概念/* 核心概念: 任务
2015-10-20 16:37:19 1033
原创 xCode - 静态库
1, 静态库的制作步骤1.1 创建静态库项目如下图所示, 新建静态库类型的项目. 1.2 包含静态库头文件将需要被外部知道的头文件包含在静态库中. 1.3 生成.a静态库生成模拟器的.a文件. 生成真机测试的.a文件. 1.4 静态库的使用在自己的项目中拖入静态库, 导入头文件, 调用方法即可. 2, 关于静态库的拓展2.1 什么是库库是一系列程序代码的集合, 是共享程序代码的一种方
2016-01-27 01:01:09 1046
原创 软件开发中的密码学
软件开发中的密码学简介密码学, 最初来自于军事之中, 以前的密码都是使用密码本来加密解密的, 如果密码本被别人知道,, 密码基本上就是泄露了, 1977年RSA发明了一套算法叫做RSA加密算法, 现在很多的加密算法诸如DES,AES都是在RSA算法的基础上衍生出来的, 安全性还是比较高的.base64加密算法维基百科 https://en.wikipedia.org/wiki/Base64 bas
2016-01-16 21:27:51 2768
原创 iOS开发 - 百度地图
1,百度地图介绍百度地图功能详解:http://developer.baidu.com/map/index.php?title=iossdk1.1 地图地图展示和地图基本展示地图展示包括:普通地图,2D、3D地图,卫星地图,实时交通图。地图的操作包括:可以通过地图接口来实现地图的单击、双击、长按、缩放、旋转改变视角等。1.2 POI检索支持周边检索、区域内检索、城市内检
2015-12-03 21:29:18 908
原创 IOS开发 - 真机测试流程
真机测试:这里写的很清楚了http://jingyan.baidu.com/article/48b558e33b96a27f38c09aa4.html证书分为 一对一,一对多, 一对一制作出来的证书只能让一个手机安装,一对多,制作出来的可以让所有添加到这里的人安装测试时候遇到的问题:1,修改Bundle identifier,这两个地方的都要修改
2015-11-10 15:23:55 477
原创 IOS开发 - 屏幕旋转
全局控制:你的应用是否支持屏幕旋转需要一个全局的配置,在 AppDelegate 中有这样一个方法,这个方法返回你的app支持屏幕旋转的全局配置,当某一个viewController要判断是否旋转自己的时候,会调用这个方法,根据这个方法的返回值决定是否可以进行屏幕旋转。 If you do not implement this method, the app uses the value
2015-11-09 22:30:28 1793
原创 IOS开发 - KVC和KVO的使用
1,KVC1,集合运算符(Collection Operators)集合运算符是一个特殊的Key Path,可以作为参数传递给valueForKeyPath:方法,注意只能是这个方法 ,如果传给了valueForKey:方法保证你程序崩溃。运算符是一个以@开头的特殊字符串,格式如下图所示:①简单集合运算符 简单集合运算符共有@
2015-11-05 20:26:24 732 1
原创 IOS 第三方库- AFNetworking
1,AFNetWorking基本使用1)GET请求- (void)getDemo2{ NSString *urlString = @"http://p.3.cn/prices/mgets"; NSDictionary *param = @{@"skuIds": @"J_1111111", @"type": @"1"}; AFHTTPReques
2015-10-26 20:41:17 509
原创 IOS 第三方库 - SDWebImage
1,SDWebImage基本使用1),基本使用//1,使用 SDWebImage 缓存一个图片 使用这种方法就可以加载并缓存一个图片// [cell.imageView sd_setImageWithURL:[NSURL URLWithString:model.icon] placeholderImage:[UIImage imageNamed:@"user_default"]]
2015-10-26 11:33:41 663
原创 IOS开发 - 多线程 NSOperation
1,NSOperation使用1)NSOperation简介NSOperation是Cocoa中的一个抽象类,用来封装单个任务和代码执行一项操作,由于是抽象类,所以不能直接实例化使用,必须定义子类继承该抽象类来实现,比较常用的NSOperation的子类有NSInvocationOperation,另外,也可以自己继承NSOperation来实现线程的操作。另外会使用到操作队列NSOp
2015-10-23 23:40:00 783
原创 IOS UI控件 - UIButton
1,UIButton的属性1)这两个属性,可以设置在高亮状态和不可用状态小,按钮的样式是否发生变化,默认是YES。@property(nonatomic)BOOL adjustsImageWhenHighlighted; // default is YES. if YES, image is drawn darker when highlighted(pressed)@prop
2015-10-23 16:38:15 574
原创 IOS UI控件 - UIImageView
1,UIIMageView的属性@property(nonatomic,retain) UIImage *highlightedImage NS_AVAILABLE_IOS(3_0); // default is nil 高亮状态显示的图片,要想显示出来,必须同时设置图片的状态是高亮状态@property(nonatomic,getter=isUserInteractionEnab
2015-10-23 14:44:12 526
原创 IOS UI控件 - UIView详解
1,UIView常用属性@property(nonatomic) BOOL clearsContextBeforeDrawing //决定在视图重画之前是否先清理视图以前的内容,缺省值为YES//如果你把这个属性设为NO,那么你要保证能在 drawRect:方法中正确的绘画。如果你的代码//已经做了大量优化,那么设为NO可以提高性能,尤其是在滚动时可能只需要重新绘画视图的一部分@pr
2015-10-22 21:13:37 816
原创 IOS学习笔记2-NSThread,链式编程
1,NSThread1.1 创建线程的方法#pragma mark - 创建线程的方法//创建线程的方法 3- (void)test3{ //隐式的创建线程,通过这种方法实际上也会创建新的线程 [self performSelectorInBackground:@selector(run) withObject:nil];}//创建线程的方法 2- (voi
2015-10-21 10:49:52 658
原创 IOS UI控件-UIScrollView
1,属性属性 作用CGPoint contentOffSet 监控目前滚动的位置CGSize contentSize 滚动范围的大小UIEdgeInsets contentInset 视图在scrollView中的位置id delegate 设置协议BOOL directionalLockEnabled 指定控件是否只能在一个方向上滚动BOOL boun
2015-10-18 20:39:52 693
原创 IOS学习笔记 - NSFileManager,沙盒路径,NSString类路径处理,NSCache,读取文件头判断图片类型
1,沙盒路径的一些操作IOS沙盒路径:iOS的沙盒机制,应用只能访问自己应用目录下的文件。iOS不像android,没有SD卡概念,不能直接访问图像、视频等内容。iOS应用产生的内容,如图像、文件、缓存内容等都必须存储在自己的沙盒内。默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp。Library包含Caches、Preferences目录。Docu
2015-10-18 17:54:47 1841
原创 设计模式之-简单工厂模式
设计模式之-简单工厂模式1,简单工厂模式概述 简单工厂模式并不属于GoF23个经典设计模式,但通常将它作为学习其他工厂模式的基础,它的设计思想很简单,其基本流程如下:首先将需要创建的各种不同对象(例如各种不同的Chart对象)的相关代码封装到不同的类中,这些类称为具体产品类,而将它们公共的代码进行抽象和提取后封装在一个抽象产品类中,每一个具体产品类都是抽象产品类的子类;
2015-10-18 12:21:05 476
原创 OC中NSLog函数输出格式详解
OC中NSLog函数输出格式详解%@ 对象• %d, %i 整数• %u 无符整形• %f 浮点/双字• %x, %X 二进制整数• %o 八进制整数• %zu size_t• %p 指针• %e 浮点/双字 (科学计算)• %g 浮点/双字• %s C 字符串• %.*s Pascal字符串• %c 字符• %C unichar• %l
2015-10-17 11:49:41 831
原创 C语言基础 - extern,移位与或非
1,extern在OC中的使用1),首先在合适的地方定义一个全局的变量,并在合适的地方赋值,赋值可以在声明时候赋值,也可以在定义的类中或者其它任何使用该全局变量的时候赋值和更改全局变量的值;2),测试发现,全局变量必须定义在一个*.m文件中,定义在*.h文件中时候XCode会报错;3),在需要使用全局变量的地方使用extern关键字声明一个和其它文件中定义的全局变量名字完全
2015-10-17 09:28:32 792
原创 IOS开发-判断ios设备和系统版本的方法
1,判断ios设备#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)#define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)#define IS_RETINA ([[UIScreen mainScreen] s
2015-10-16 16:17:42 1097
原创 IOS学习笔记-perFormSelector,RunLoop,Debug神器,UIResponder,Cocoa Touch事件处理
1,为什么需要多线程当程序中需要一些比较耗时的操作的时候,这时候我们可以开辟多个线程,让子线程去执行比较耗时的操作,主线程继续相应用户的其它操作。比如下载图片等。1)获取网络图片显示出来的方法:// 1. url, 确定一个网络上的资源路径NSURL *url = [NSURL URLWithString:@"http://h.hiphotos.baidu.com/image/p
2015-10-15 23:04:19 2329
转载 设计模式之-观察者模式
1,观察者模式概述 观察者模式是使用频率最高的设计模式之一,它用于建立一种对象与对象之间的依赖关系,一个对象发生改变时将自动通知其他对象,其他对象将相应作出反应。在观察者模式中,发生改变的对象称为观察目标,而被通知的对象称为观察者,一个观察目标可以对应多个观察者,而且这些观察者之间可以没有任何相互联系,可以根据需要增加和删除观察者,使得系统更易于扩展。 观察者模式定义如
2015-10-12 21:09:54 707
原创 IOS 第三方库之-Masonry 基本用法
Masonry 基本用法1,源码示例1)创建一个view对象,使用约束居中显示,后面测试都使用这个view对象UIView *view = [[UIViewalloc]init]; view.backgroundColor = [UIColorblackColor]; [self.viewaddSubview:view];//使用autola
2015-10-08 21:54:40 2389 1
原创 IOS 第三方库之-MBProgressHUD的使用详解
1,MBProgressHUD常用属性和用法Demo- (void)testMBProgressHUD{ NSLog(@"test MBProgressHUD "); /* 要将一个MBProgressHUD显示出来,1,创建对象;2,将HUD添加到view上;3,调用show方法 隐藏,1,hide:方法;
2015-09-24 15:46:22 4669
原创 设计模式之-单例模式
1,为什么要有单例模式在实际的开发中,有时候为了节约系统资源,有时候需要确保系统中某个类只有一个实例,我们需要这个类的实例第一次创建之后就无法再创建其它的实例,为了确保这个类实例的唯一性,我们需要使用单例模式来创建这个类。单例模式(SingIeton Pattern)概念:确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个单例,这个类称为单例类,它提供全局访问的方法。单例模式
2015-09-16 09:56:28 545
原创 Objective-C,类簇详解Foundation框架中的类簇
类簇(class cluster)是一种设计模式,在Foundation Framework中被广泛使用1,类簇基本概念和介绍百度百科中类簇的解释:http://baike.baidu.com/link?url=2BPwd028NVmCchel18RFT_Bhdzj4ZunUGNgM_wQE83alAlRog4P3Z_qOEtF52Oamp-bNY4zvP7lnu6_FdGkCEK
2015-09-12 15:30:08 1878 1
原创 设计模式之-模板方法模式
1,模板方法模式概念概念:定义一个操作中算法的框架,而将一些步骤的实现延迟到子类中去。模板方法模式使得子类可以不改变算法结构即可重定义该算法的某些特定步骤。Template Method Pattern: Define the skeleton of an algorithm in an operation, deferring some steps to subclasses. Te
2015-09-11 10:52:22 526
转载 最全设计模式详解
基础知识 设计模式概述从招式与内功谈起——设计模式概述(一):设计模式从何而来?从招式与内功谈起——设计模式概述(二):设计模式是什么?从招式与内功谈起——设计模式概述(三):设计模式有什么用?附:个人观点 面向对象设计原则面向对象设计原则概述面向对象设计原则之单一职责原则面向对象设计原则之开闭原则面向对象
2015-09-11 10:33:39 2214 2
原创 IOS开发-琐碎的知识点总结1
/****************** 总 结 ************************ 2015年08月26日 1,UIColor的初始化: self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg2.jpg"]]; //将背景图片设置成颜色类型的作为背景颜色
2015-09-10 20:21:30 437
原创 IOS开发,UINavigationController属性和基本用法详解
Demo://1,改变导航控制器的颜色 两种方法 [[UINavigationBar appearance] setBarTintColor:[UIColor purpleColor]]; navi.navigationBar.barTintColor = [UIColor yellowColor]; //2,一般情况,我们都会使用自己的颜色,一般使用下面的宏
2015-09-10 17:48:24 2326
原创 ios开发文字排版,段落排版,富文本
1,使用NSMutableAttributedString设置文字的各种属性1)第一种方式建立一个属性字典,,用字典和字符串初始化NSMutableAttributedString对象,这个对象就有了属性字典中的属性2)第二种方式先用字符串初始化一个NSMutableAttributedString类型对象,然后单独给指定范围的文字指定属性。3)使用步骤,Demo:
2015-09-09 15:32:18 7399
原创 Objective-C可变参数方法的定义和使用
1,Demo#import //1,导入这个头文件- (int)VariableParameter:(NSString *)str,...NS_REQUIRES_NIL_TERMINATION //2,参数列表这样写{ va_list varList; //3,定义va_list类型的变量 NSString *temp; int num = 0;
2015-09-07 11:28:14 1818
原创 Objective-C类别(Category),分类
1,类别的目的:1)代替子类2)对类进行扩展3)类方法的归类2,类别基本注意事项1,为一个类创建分类,其实就是把它的实现分为几部分;每个类别都是类的一部分;一个类可以有多个分类,但是在每一个分类中只能为原有类增添方法,不能增添实例变量;对于一个不想公开源代码的类来说,为它创建分类是很有必要的。 2,可以为一个类写很多的分类,但是这些分类都是原有类的一部分,其中的成员也会
2015-09-06 22:02:22 633
原创 设计模式之-代理模式(Proxy)
1,简介 定义:为其他对象提供一种代理,以控制对这个对象的访问。 代理模式中的角色:抽象角色:声明真实对象和代理对象的共同接口; 代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻都能代替真实对象。同时,代理对象可以在执行真实对象操作时,附加其他的操作,相当于对真实对象进行封装。 真实角色:代
2015-09-06 10:46:42 563
原创 IOS控件UIScrollView详解(基本方法、属性和delegate用法)
1,UIScrollView 常用属性和使用方法--官方查阅文档 https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIScrollView_Class/Reference/UIScrollView.html --介绍:UIScrollView用于在一个小范围里显示很大的内容的控件。通过用户平滑、手
2015-09-05 22:32:15 761
原创 IOS开发UIGestureRecognizer的基本使用方式和代理
1,iPhone上手势基本操作类型 1.点击(Tap) 点击作为最常用手势,用于按下或选择一个控件或条目(类似于普通的鼠标点击)、 2.拖动(Drag) 拖动用于实现一些页面的滚动,以及对控件的移动功能。 3.滑动(Flick) 滑动用于实现页面的快速滚动和翻页的功能。 4.横扫(Swipe) 横扫手势用于激活列表项的快捷操作菜单 5.双击(Double T
2015-09-05 16:22:16 4092
转载 Objective-C常用类的常用方法
第1篇 Objective-C准备篇 第1章 Objective-C学习环境准备 1.1 Objective-C基础 1.1.1 Objective-C的发展历程 1.1.2 Objective-C语言的特点 1.1.3 技术架构 1.2 开发环境 1.2.1 注册开发者账号 1.2.2 下载安装Xcode 1.2.3 更新帮助
2015-09-04 15:44:53 2168
原创 Objective-C类,NSUrl介绍和使用
1,NSUrl的初始化方法NSURL *url = [NSURL URLWithString:@"http://www.baidu.com?key=4&content=1111"];2,NSUrl的基本操作NSURL *url = [NSURL URLWithString:@"http://www.baidu.com?key=4&content=1111"]; NSLog(@"
2015-09-04 15:13:42 1289
Everyone can use english-李笑来
2019-03-29
类的关系图, UML图示
2016-03-23
Objective-C链式编程Demo,NSAttributeString封装,富文本封装
2015-10-22
GCD详解Demo
2015-10-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人