自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

HHuiHao

让我们一起编出自己的世界!

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

原创 iOS 单例模式 (设计模式一)

单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。 主要优点:提供了对唯一实例的受控访问。 由于在系统内存中只存在一个对象,因此可以节约系统资源,对于一些需要频繁创建和销毁的对象单例模式无疑可以

2015-07-26 19:32:29 991

原创 iOS 多线程GCD 四

基本概念 简介语言:C 线程生命周期:自动管理 使用频率:经常使用 旨在替代NSThread等多线程 充分利用设备的多核 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数 GCD的优势GCD是苹果公司为多核的并行运算提出的解决方案 GCD会自动利用更多的CPU内核(比如双核、四核) CD会自动管理线程的生命周期(创建线程、调度任务、销毁

2015-07-25 23:01:05 842

原创 iOS 多线程NSThread 三

基本概念 简介 语言:OC 线程生命周期:程序员管理 使用频率:偶尔使用 更加面向对象 简单易用,可直接操作线程对象 创建和启动线程 一个NSThread对象就代表一条线程 创建、启动线程 NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil]; [thread sta

2015-07-25 22:57:31 721

原创 iOS 多线程pthread 二

基本概念: 简介 语言:C 线程声明周期:程序员管理 使用频率:几乎不用 一套通用的多线程API 适用于Unix/Linux/Windows等系统 跨平台、可移植性 使用难度大 简单案列一#import "ViewController.h" #import <pthread.h>@interface ViewController ()@end@implementation ViewControll

2015-07-25 22:52:42 933

原创 iOS 多线程简介 一

进程与线程分别: 进程: 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开迅雷、Xcode,系统就会分别启动2个进程 线程 1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程) 一个进程(程序)的所有任务都在线程中执行 比如使用酷狗播放音乐、使用迅雷下载电影,都需要在线程中执行线程的串行 如果要在1个线程中执行多个

2015-07-25 22:44:42 797 1

原创 iOS UITextView内容添加后,自动滚动到最后一行

用scrollRangeToVisible函数进行滚动,可以跳动到最后一行内容上[_textView scrollRangeToVisible:NSMakeRange(_textView.text.length, 1)]; 但是效果不好,由于重新设置了内容,导致每次都要从顶部跳到最后一行,界面很闪 最终解决方案:self.textView.layoutManager.allowsNonConti

2015-07-24 10:11:40 4256

转载 iOS Interface builder was unable to determine the type of xxx.xib

今天在合并分支代码到主干的过程中,遇到xib文件无法识别,导致运行失败 解决思路可以想到,应该是合并造成xib文件版本冲突,一种简单的方式可以拿最新的版本直接覆盖出问题的xib文件。但是这种办法简单粗暴,没有深入探究该xib文件问题到底出在哪里。联想到代码发生版本冲突时,头文件或实现文件中,会标记出冲突的代码,那么出问题的xib文件对应的源码中同样也应该存在冲突的代码。带着这样的想法,我打开了该x

2015-07-21 14:09:05 1067

原创 KVO(Key Value Observing)

*KVO可以监听某个对象属性的改变 原理:只要给一个对象注册一个监听,那么在运行时, 系统就会自动给该对象生成一个子类对象,并且重写自动生成的子类对象的被监听属性的set方法,然后在set方法中通知监听者 *定义一个HSPerson类// // HSPerson.h // KVC // // Created by hans on 15/7/13. // Copyright © 2015年

2015-07-14 08:44:49 1198

原创 iOS KVC(Key-Value Coding)

iOS KVC(Key-Value Coding)KVC是指NSKeyValueCoding,一个非正式的 Protocol,提供一种机制来间接访问对象的属性常见使用方法: 获取值valueForKey: 根据属性名取值 valueForKeyPath: 根据路径取值 ( 如:[person valueForKeyPath:@”car.price”] ) valueForUndefinedKey

2015-07-13 23:31:44 1170

转载 iOS UIButton在某些情况下不能立刻响应TouchDown事件

转载:http://www.07net01.com/2015/04/814048.html UIButton在某些情况下不能立刻响应TouchDown事件,换句话说,迅速点击按钮时,你是永远看不见这个按钮的高亮状态的。 而你会发现,出现这种情况时,这些按钮都在UIScrollView(UITableView)上。 为此我用了一下午时间查贴整理,得到了完美的解决方案。 在介绍解决方案

2015-07-08 16:54:06 2399

空空如也

空空如也

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

TA关注的人

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