自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 79 MD5加密方案

1>MD5:什么是MD5全称是Message Digest Algorithm 5,译为“消息摘要算法第5版”效果:对输入信息生成唯一的128位散列值(32个字符)MD5的特点输入两个不同的明文不会得到相同的输出值根据输出值,不能得到原始的明文,即其过程不可逆MD5的应用由于MD5加密算法具有较好的安全性,而且免费,因此该加密算法被广泛使用主要运用在数字签名、文件完整性验证以及口令加密

2015-08-31 17:20:08 2190

原创 78 POST请求示例

/** * 登录逻辑 */- (IBAction)login{ // 1.表单验证(输入验证) NSString *username = self.usernameField.text; if (username.length == 0) { // 没有输入用户名 [MBProgressHUD showError:@"请输入用户名"];

2015-08-31 15:27:29 549

原创 77 NSMutableURLRequest常用设置 GET和POST比较 发送JSON给服务器

1>NSMutableURLRequest的常用设置:NSMutableURLRequest是NSURLRequest的子类,常用方法有设置请求超时等待时间(超过这个时间就算超时,请求失败)- (void)setTimeoutInterval:(NSTimeInterval)seconds;设置请求方法(比如GET和POST)- (void)setHTTPMethod:(NSString *

2015-08-31 15:26:00 1744

原创 76 JSON基本概念和解析方案

1>JSON基本概念:什么是JSONJSON是一种轻量级的数据格式,一般用于数据交互服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外)JSON的格式很像OC中的字典和数组{"name" : "jack", "age" : 10}{"names" : ["jack", "rose", "jim"]}标准JSON格式的注意点:key必须用双引号要想从JSON中挖掘出

2015-08-31 00:43:05 395

原创 75 NSURLConnection的基本使用示例

1>NSURLConnection的基本使用示例:/** * 登录逻辑 */- (IBAction)login{ // 1.表单验证(输入验证) NSString *username = self.usernameField.text; if (username.length == 0) { // 没有输入用户名// [MBProgressHUD s

2015-08-31 00:38:54 655

原创 74 NSURLConnection的基本使用

1>NSURLConnection的基本使用:NSURLConnection常见的发送请求方法有以下几种:1)同步请求:+ (NSData *)sendSynchronousRequest:(NSURLRequest *)request returningResponse:(NSURLResponse **)response error:(NSError **)error;2)异步请求:根据对服务

2015-08-31 00:36:20 375

原创 73 HTTP通信基本概念

1>URL:什么是URLURL的全称是Uniform Resource Locator(统一资源定位符)通过1个URL,能找到互联网上唯一的1个资源URL就是资源的地址、位置,互联网上的每个资源都有一个唯一的URLURL的基本格式 = 协议://主机地址/路径http://ios.itcast.cn/ios/images/content_25.jpg //域名访问,然后解析为ip地址

2015-08-29 01:14:36 569

原创 72 网络开发概念

1>HTTP请求有关的几个概念:在网络编程中,有几个必须掌握的基本概念客户端(Client):移动应用(iOS、android等应用)服务器(Server):为客户端提供服务、提供数据、提供资源的机器请求(Request):客户端向服务器索取数据的一种行为响应(Response):服务器对客户端的请求做出的反应,一般指返回数据给客户端2>服务器的种类:按照软件开发阶段来分,服务器可以大致

2015-08-29 01:06:27 401

原创 71 自定义NSOperation

1>自定义NSOperation:自定义NSOperation的步骤很简单重写- (void)main方法,在里面实现想执行的任务重写- (void)main方法的注意点自己创建自动释放池(因为如果是异步操作,无法访问主线程的自动释放池)经常通过- (BOOL)isCancelled方法检测操作是否被取消,对取消做出响应2>自定义NSOperation示例:/** * 在main方法

2015-08-28 17:08:43 350

原创 70 NSOperation基本使用

1>NSoperation:NSOperation是个抽象类,并不具备封装操作的能力,必须使用它的子类使用NSOperation子类的方式有3种NSInvocationOperationNSBlockOperation自定义子类继承NSOperation,实现内部相应的方法2>NSInvocationOperation:创建NSInvocationOperation对象- (id)initW

2015-08-28 11:07:05 424

原创 69 单例使用宏实现

1>判断是否是ARC环境:可以用宏判断是否为ARC环境#if __has_feature(objc_arc)// ARC#else// MRC#endif2>定义宏的时候字符串连接:// ## : 连接字符串和参数#define singleton_h(name) + (instancetype)shared##name;1>在ARC和MRC环境下单例的宏实现:// ## : 连接

2015-08-28 01:00:22 448

原创 68 MRC单例实现

1>MRC单例实现:- (id)init{ if (self = [super init]) { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ // 加载资源 }); } return self;}static id _i

2015-08-28 00:55:22 348

原创 67 ARC单例实现

1>ARC单例实现//// 定义一份变量(整个程序运行过程中, 只有1份)static id _instance;- (id)init{ if (self = [super init]) { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ // 加载资源

2015-08-28 00:50:21 388

原创 66 GCD常用方法

1>延时操作:iOS常见的延时执行有2种方式调用NSObject的方法[self performSelector:@selector(run) withObject:nil afterDelay:2.0];// 2秒后再调用self的run方法使用GCD函数dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSE

2015-08-28 00:46:59 778

原创 65 GCD基本使用

1>任务函数:用同步的方式执行任务dispatch_sync(dispatch_queue_t queue, dispatch_block_t block);queue:队列block:任务用异步的方式执行任务dispatch_async(dispatch_queue_t queue, dispatch_block_t block);同步和异步的区别同步:在当前线程中执行异步:在另一条

2015-08-27 00:41:10 585

原创 64 互斥锁 线程通信 线程同步

1>互斥锁:互斥锁使用格式@synchronized(锁对象) { // 需要锁定的代码 }注意:锁定1份代码只用1把锁,用多把锁是无效的互斥锁的优缺点优点:能有效防止因多线程抢夺资源造成的数据安全问题缺点:需要消耗大量的CPU资源互斥锁的使用前提:多条线程抢夺同一块资源相关专业术语:线程同步线程同步的意思是:多条线程按顺序地执行任务互斥锁,就是使用了线程同步技术2>原子和非原子属性:

2015-08-26 10:38:13 404

原创 63 NSThread的基本使用

NSThread创建线程的几种方式:1>创建、启动线程NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run:) object:@“参数”];[thread start];// 线程一启动,就会在线程thread中执行self的run:方法,object是run:方法的参数2>创建线程

2015-08-26 00:01:21 458

原创 62 pthread

多线程实现方案一:(在iOS开发中几乎不用,仅作为了解)void *run(void *data) { NSThread *current = [NSThread currentThread]; for (int i = 0; i<20000; i++) { NSLog(@"run---%@", current); } return NULL;}- (IB

2015-08-25 01:02:15 468

原创 61 多线程基本概念

多线程基本概念:1>进程:进程是指在系统中正在运行的一个应用程序,每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内2>线程:1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程)线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行3>线程任务的串行:1个线程中任务的执行是串行的如果要在1个线程中执行多个任务,那么只能一个一个地按顺序执行这些任务也就是

2015-08-25 00:57:09 492

原创 60.电话 信息 邮件 评分 打开其他应用

1.打电话1>// 弊端:使用该方法进行拨号之后,当电话挂断之后不会返回应用程序, 会停留在通话记录界面NSURL *url = [NSURL URLWithString:@"tel://10010"];[[UIApplication sharedApplication] openURL:url];2>// 在拨打电话之后会提示用户是否拨打, 当电话挂断之后会返回应用程序NSURL *u

2015-08-12 01:38:47 427

原创 59.strong weak,block,aotoresizing代码实现

1.strong和weak1.1>在OC中没有强指针指向的对象就会销毁,所有对象被创建的时候默认是强指针。比如:int main(int argc, const char * argv[]){ @autoreleasepool { // strong 强指针 // weak 弱指针 // ARC, 只要对象没有强指针就会自动释放

2015-08-11 15:36:30 491

原创 58.iOS6 7 cell适配 tableView背景

1.设置tableView的背景// 设置tableview的背景颜色self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg"]];// 清空系统的backgroundViewself.tableView.backgroundView = nil;//backgrou

2015-08-05 00:34:47 436

原创 57.加载json文件 webview加载网页

1.加载json文件和加载plist文件类似,给定文件路径即可,不同的是json文件需要加载为data,然后通过json序列化类转换NSString *path = [[NSBundle mainBundle] pathForResource:@"help.json" ofType:nil];NSData *data = [NSData dataWithContentsOfFile:path]

2015-08-04 22:19:30 1240

原创 56.UICollectionView的基本使用

//传入layout用于以后collection view的布局- (id)init{ //UICollectionViewLayout 布局对象决定了将来CollectionView上每一个Cell显示的方式 // 创建一个布局对象,使用UICollectionViewLayout的子类UICollectionViewFlowLayout(流水布局) UICollect

2015-08-03 18:04:03 299

空空如也

空空如也

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

TA关注的人

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