自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mcy的iOS学习站

如果你也是一个iOS开发爱好者,那来一起交流呗!

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

原创 iOS之UI初级---UIWindow的基本内容

本文参考:唐巧的《iOS进阶》一、UIWindow简介在 iOS 应用中,我们使用 UIWindow 和 UIView 来呈现界面。UIWindow 并不包含任何默认 的内容,但是它被当作 UIView 的容器,用于放置应用中所有的 UIView。二、是不是只要是新创建的 UIWindow 一定就会覆盖在界面的最上面呢?UIWindow 有一个类型为“UIWindowLevel”的属性,该属性定义了

2015-11-15 15:44:34 389

原创 iOS之UI高级---如何理解图文混排

参考资料: 1.http://www.allenchiang.com/2014/05/28/core-text/ 2.唐巧:《iOS进阶》一、iOS开发中的文字排版通常我们使用UILabel、UITextField、UITextView在iOS上展示一些我们需要的文字。前者用于简单的展示,后两者可以用于接受用户的输入。通常情况下我们用上述3者展示简单的纯文本,如果我们需要展示图文混排或者稍微带一

2015-11-12 16:19:22 680

原创 iOS中的ARC---ARC规则

本文参考:《objective-c高级编程》一、什么是ARC简单来归纳: ①ARC的本质也是引用计数在管理内存,ARC只是自动帮助处理引用计数。 ②引用计数的机制就是如果没有强引用指向对象,对象就会被释放。 ③ARC中所有权的修饰符包括:__strong、__weak、__unsafe_unretained、__autoreleasing二、使用ARC①使用clang(

2015-11-09 18:48:02 475

原创 iOS中的ARC---内存管理的思考方式

本文参考:《objective-c高级编程》一、引用计数式内存管理的思考方式①自己生成的对象,自己持有 ②非自己生成的对象,自己也能持有 ③不再需要自己持有的对象时,释放 ④非自己持有的对象,无法释放以下逐一做讲解:①自己生成的对象,自己持有/* alloc * new * copy * mutableCopy*///自己生成,并持有对象id obj1 = [[NSObject a

2015-11-08 20:43:56 337

原创 iOS中的GCD(2)---获取队列方法

有2种方法获取队列: ①dispatch_queue_create ②Main Dispatch Queue/Global Dispatch Queue1.dispatch_queue_create//参数1:队列名字//参数2:队列优先级dispatch_queue_t mySerialDispatchQueue = dispatch_queue_create("myQueue", NUL

2015-11-08 20:16:56 1580

原创 iOS之多线程---Runloop和多线程

1.线程与runloop的关系原文地址:http://blog.csdn.net/wzzvictory/article/details/9237973原文写的很详细,需要深入了解的请参考原文。此处我只是做一些归纳总结,日后翻阅的时候大致有一些思路。一、线程与Runloop的关系1.线程与runloop密切相关 1)run loop和线程是紧密相连的,可以这样说run loop是为了线程而生,没有线

2015-11-07 22:50:56 423

原创 iOS第三方框架---AFNetWorking详解

AFNetworking1)为什么使用: 简单的向某个web站点的页面提交请求并获取服务器的响应,NSURLConnection能胜任。但是绝大部分web页面受到保护,需要session和cookie的处理,复杂度提升。 afnetworking的好处:发送http请求,接收http相应,但是不会缓存服务器的响应,不能执行html页面中的javascript代码。自带解析json、xml和pli

2015-11-05 09:55:26 408

原创 iOS第三方框架---SDWebImage详解

SDWebImage支持异步的图片下载+缓存,提供了UIImageView+WebCache(类目)类用于加载网络图片。它的主要流程很复杂,但是可以具体归结为3个大类: 一.读取URL,在缓存和硬盘中查找图片 二.找不到图片,开启线程下载图片 三.图片下载完成,做缓存处理,同时清空一些过期数据,也提供一些优秀功能一. 读取图片URL地址,在缓存和硬盘中查找该图片是否存在

2015-11-04 21:37:14 404

原创 iOS消息传递机制---KVC和KVO

1.使用KVC定义一个Student类,继承于NSObject。.h文件复制代码复制代码 .m文件.m文件也没有实现。name属性没有加property,原来的访问方法就访问不了name属性了。怎么办呢?用kvc就可以了复制代码//h文件实现#import <Foundation/Foundation.h>@interface Student : NSObject{ NSString

2015-11-04 10:37:39 402

原创 iOS之内存管理---堆栈问题详解

3.内存管理的基本原则iOS内存管理黄金法则:如果使用alloc、copy(mutableCopy)或者retain一个对象时,你就有义务向它发送一条release或者autorelease消息。其他方法创建的对象,不需要你来进行内存管理 OC中的堆栈: ①管理方式: 栈:是由编译器自动管理,无需我们手工控制 堆:释放工作由程序员控制,容易产生memory leak。②申请大小 栈:

2015-10-30 10:33:09 1329

原创 iOS之工具类---常见的5页导航控制页面(附带侧边控制器和主题管家类)

一个App常见的内容包括:NavigationController(上)、ViewController(中)、TabBarController(下)还可以增加侧边控制器:MMDrawController(三方框架)我实现了一个基本的导航页面:包括了上面提到的控制器和页面,同时附带了一个主题类的实现。下面讲解一下主题类的实现思路,具体的实现请见Github上我的完整工程。 传送门:实现思

2015-10-28 15:21:01 622

原创 iOS之UI高级---CALayer和CAAnimation的混合使用

开篇之前,我的内心是复杂的,因为CALayer和CAAnimation这两个类包含的内容实在太多了。仅仅靠一篇文章不但无法很好的了解,甚至很久以后想要回来查阅时都不好开头。所以,我决定以关键词的方式来说明,当以后运用到相关知识的时候再根据关键词进行查阅。PS:以下是两篇很好的文章,通读一遍也就没什么不能理解的了。我上传到我的github上。并且附带了我实践时使用的工程。 传送门: https

2015-10-25 20:38:54 567

原创 iOS之UI高级---Quartz2D基本使用(1)

一:Quartz 2D介绍:①二维图形绘制引擎,支持iOS环境和Mac OS X环境 ②是CoreGraphics框架的一部分,其中的很多数据类型和方法都是CG开头。会经常见到Quartz 2D和CoreGraphics两个术语交互使用 ③Quartz与分辨率和设备无关,所以绘制的时候不需要考虑最终绘图的目标和设备。(2)Quartz内存管理: ①使用含有“Create”或”Copy”

2015-10-25 11:31:21 374

原创 iOS常见问题---const和volatile

const的合理使用首先提问: const意味着”只读”,下面的声明都是什么意思? const int a;int const a;const int *a;int * const a;int const * a const; 解答: 前两个的作用是一样,a是一个常整型数。第三个意味着a是一个指向常整型数的指针(也就是,整型数是不可修改的,但指针可以)。第四个意思a是一个指向整

2015-10-24 11:07:01 484

原创 iOS的常见问题---Object-C有私有方法吗?私有变量呢?多重继承?

问题:Object-C有私有方法吗?私有变量呢?多重继承?①objective-c – 类里面的方法只有两种, 静态方法和实例方法. 在Objective‐C中,所有实例变量默认都是私有的,所有实例方法默认都是公有的②这似乎就不是完整的面向对象了,按照OO的原则就是一个对象只暴露有用的东西. 如果没有了私有方法的话, 对于一些小范围的代码重用就不那么顺手了. 在类里面是可以声名一个私有方法

2015-10-24 10:59:48 1508

原创 iOS之多线程---三种多线程技术

1.多线程的基本概念和用法 ①进程:每一个进程都一是一个应用程序,都有独立的内存空间。(一个程序也可以由多个进程)同一个进程中的线程共享内存中的存储空间和资源 ②线程: 每一个程序都有一个主线程,调用main来启动。 主线程的生命周期和应用程序绑定,程序退出时主线程停止。 任何可以阻塞主线程的任务不要再主线程中执行(比如访问网

2015-10-22 14:32:38 432

原创 iOS之网络编程---网络协议浅谈

1.TCP/UDP协议: TCP:传输控制协议,提供面向连接的、可靠的、点到点的通信(可靠) UDP:用户数据报协议,提供非连接的不可靠的,点到多点的通信(快速) **TCP的三次握手: 1.客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认 2.服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个syn

2015-10-22 11:18:04 408

转载 iOS内存管理---block机制详解

初学者对于block机制一时很难理解。我刚开始学习的时候也是跟着敲代码,并不能说立马理解了其中的道理。今天,我想从2个层次、5个点去相对详细的讲解一下OC中的block机制。第一层:理解block机制①定义(相关说明很多,了解的人可以跳过)int a=1, b=2; int block1 = a+b; //定义方式1 int (^block2)(int,

2015-10-20 19:59:15 1582

原创 iOS之UI高级---触摸事件

1.UITouch的基本使用①事件类型: iOS中有多种形式的事件:触摸事件、运动事件、远程控制事件等 PS:此处主要讲解触摸事件②触摸事件: 当用户触摸屏幕时,事件会被封装成一个event实例,包含了触摸事件的相关信息。 触摸—>捕捉此事件,创建一个UIEvent对象—>将次对象加入当前应用程序的事件队列中—>由UIApplication对象 从队列中,一个个取出来

2015-10-20 14:10:38 390

原创 iOS之UI基础---frame和bounds的区别

Frame和bounds的区别:①Frame:view在父view坐标系统中的位置和大小 ②bounds:view在本身坐标系统中的位置和大小 ③center:view的中心店在父view坐标系统中的位置和大小经典:斯坦福大学上课用的图! 代码讲解:- (void)viewDidLoad { [super viewDidLoad]; UIView *view1 = [[UIVie

2015-10-19 20:54:58 323

原创 iOS每日一练(2)

1.内存问题①dealloc:[super dealloc]; //把从父类中继承来的实例变量释放了//以下两个方法,self.xxx = nil;更好。将变量设置为nil,可以防止野指针。self.xxx = nil;[xxx release]; //ARC不需要自己操作②自动释放池 NSAutoRelease的一个实例。当向一个对象发送autoRele

2015-10-13 16:57:34 298

原创 iOS中的GCD(1)---串、并行队列和同、异步添加

#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; /*系统提供 一个主队列(串行):唯一可用于更新UI的队列 四个全局调度队列:不同优先级:ba

2015-10-09 19:50:56 423

原创 iOS每日一练(1)---#import,类目和扩展,ARC,类拷贝

1.#import、#include和@class之间的区别(1)#import和#include:效果相同,只是后者不会引起交叉编译,确保头文件只会被导入一次。 (2)#import和@class:#import包含了这个类的所有信息,包括实体变量和方法。@class告诉编译器,其后面的名称是某个类的名称,它具体的定义暂时不需要知道,后面会告诉你。 PS: ①在.m文件中尽量使用@i

2015-10-08 23:09:34 332

原创 iOS网络编程---根据URL下载网络文件的方法

下面是源码,注释掉的部分代码是一次性下载的功能(不推荐),正常运行的代码实现了:- 功能:根据提供的URL下载网络文件 PS:其中有6个关键字,是实现该功能使用到的知识点,我在代码的后面做了必要的归纳和整理。#define kReceivedTotal @"receivedTotal"#define kTotal @"total"#import "ViewController.h"@in

2015-09-29 22:07:53 3344

空空如也

空空如也

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

TA关注的人

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