自定义博客皮肤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)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

转载 TCP和UDP的区别(转)

TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信!TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了。TCP/IP协议集包括应用层,

2016-08-31 16:09:31 314

转载 盘点2016年iOS开发面试题及答案整理

在现如今,随着移动互联网科技不断的发展和创新,如今无论是公司还是开发者或设计师个人而言,面试都是一项耗时耗钱的项目,而面对iOS开发者及设计师在面试时可能会遇到的问题进行了筛选与汇总。下面我们一起来一下吧。         1、简述OC中内存管理机制。与retain配对使用的方法是dealloc还是release,为什么?需要与alloc配对使用的方法是dealloc还是release,为

2016-08-27 17:59:55 494

转载 KVC丶KVO

概述由于ObjC主要基于Smalltalk进行设计,因此它有很多类似于Ruby、Python的动态特性,例如动态类型、动态加载、动态绑定等。今天我们着重介绍ObjC中的键值编码(KVC)、键值监听(KVO)特性:键值编码KVC键值监听KVO键值编码KVC我们知道在C#中可以通过反射读写一个对象的属性,有时候这种方式特别方便,因为你可以利用字符串的方式去动态控制一个对

2016-08-23 18:35:39 258

转载 iOS程序中的内存分配 栈区堆区全局区

在计算机系统中,运行的应用程序的数据都是保存在内存中的,不同类型的数据,保存的内存区域不同。一、内存分区栈区(stack) 由编译器自动分配并释放,存放函数的参数值,局部变量等。栈是系统数据结构,对应线程/进程是唯一的。优点是快速高效,缺点时有限制,数据不灵活。[先进后出]栈空间分静态分配 和动态分配两种。 静态分配是编译器完成的,比如自动变量(auto)的分配。 动

2016-08-22 20:01:10 344

原创 IOS 开发 懒加载 (延迟加载) 的基本方式

懒加载的好处:1> 不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强2> 每个属性的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦3>只有当真正需要资源时,再去加载,节省了内存资源。1.懒加载基本 我们知道iOS设备的内存有限,如果在程序在启动后就一次性加载将来会用到的所有资源,那么就有可能

2016-08-22 19:38:30 772

转载 纯代码和Storyboard搭建Cell

本节主题(Storyboard/模型思想搭建设置页面)源码地址在文章末尾设置(Setting)页面的搭建(实现效果)开发方式(这里提供两种,个人感觉第二种重用性较高,推荐使用。但第一种较为简单,视开发需求选择)(1)纯代码 + StoryBoard混合 开发(2)纯代码 + 模型 思想设置页面的搭建假设你已经搭建出了这个基本框架《十分钟搭建App主流框架》但这毕

2016-08-22 12:09:18 601

转载 IOS经常使用的宏集合

iOS开发过程中使用一些常用的宏可以提高开发效率,提高代码的重用性;将这些宏放到一个头文件里然后再放到工程中的-Prefix.pch文件中(或者直接放到-Prefix.pch中)直接可以使用,灰常方便。本文整理自http://www.cocoachina.com/applenews/devnews/2013/0328/5907.html 。做了一些分类和注释,可以根据自己习惯再添加

2016-08-20 18:09:14 303

原创 @try异常处理

转载自:http://blog.sina.com.cn/s/blog_71715bf8010166qf.html开篇大话: Object-C语言的异常处理符号和C++、JAVA相似。再加上使用NSException,NSError或者自定义的类,你可以在你的应用程序里添加强大的错误处理机制。异常处理机制是由这个四个关键字支持的:@try,@catch,@thorw,@finally

2016-08-20 13:51:03 564 1

转载 iOS/NSUserDefaults详解

NSUserDefaults是什么,有什么用处对于应用来说,每个用户都有自己的独特偏好设置,而好的应用会让用户根据喜好选择合适的使用方式,把这些偏好记录在应用包的plist文件中,通过NSUserDefaults类来访问,这是NSUserDefaults的常用姿势。如果有一些设置你希望用户即使升级后还可以继续使用,比如玩游戏时得过的最高分、喜好和通知设置、主题颜色甚至一个用户头像,那么你可以使

2016-08-20 10:56:11 467

转载 几种常用的本地化存储方式

概论所谓的持久化,就是将数据保存到硬盘中,使得在应用程序或机器重启后可以继续访问之前保存的数据。在iOS开发中,有很多数据持久化的方案,接下来我将尝试着介绍一下5种方案:plist文件(属性列表)preference(偏好设置)NSKeyedArchiver(归档)SQLite 3CoreData沙盒在

2016-08-20 00:02:12 1180

转载 贝塞尔曲线绘制路径

最近项目中需要用到用贝塞尔曲线去绘制路径 ,然后往路径里面填充图片,找到这篇文章挺好,记录下来 自己学习! 转至 http://blog.csdn.net/guo_hongjun1611/article/details/7839371使用UIBezierPath类可以创建基于矢量的路径,这个类在UIKit中。此类是Core Graphics框架关于path的一个封装。使用此类可以定

2016-08-19 21:09:19 3910

原创 Obj-c数组排序

sortedArrayUsingComparator数组排序方法sortedArrayUsingSelector方法只能升序array = [array sortedArrayUsingSelector:@selector(compare:)];12// 给数组排序,块代码的返回值,比较结果// NSOrderedAscending = -1, 上升// NSOrderedSame

2016-08-19 13:46:49 430

转载 UIWebView替代品WKWebView的使用及js交互

web页面和app直接的交互是很常见的东西,之前尝试过flex和js的相互调用以及android和js的相互调用,却只有ios没试过,据说比较复杂。周末花了点时间研究了一下,确实和其他的不太一样,但是 也不见复杂。要知道的事情ios的webview有2个类,一个叫UIWebView,另一个是WKWebView。两者的基础方法都差不多,本文重点是后者,他是取代UIWebVie

2016-08-18 13:13:46 1101

原创 ios视图frame与bounds的区别

bounds是指这个view在它自己坐标系的坐标和大小 而frame指的是这个view在它superview的坐标系的坐标和大小
区别主要在坐标系这一块。

很明显一个是自己为原点的坐标系,一个是以屏幕为原点的坐标系。绝对坐标。。。相对坐标。。。比如屏幕旋转的时候就要以相对来重绘。 
frame 如果一个按钮,是在表格里,按钮的frame 的坐标也是相对的,并不是相对屏幕,也就是说是相对坐标,不是

2016-08-18 13:07:50 463

转载 UICollectionView使用以及与UITableView的区别

在开始前我们在这先附一段最简单的代码- (void)viewDidLoad{ [super viewDidLoad]; UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init]; UICollectionView *colView =

2016-08-17 14:15:09 603

原创 使用runloop阻塞线程

RunLoop从字面上看是运行循环的意思,这一点也不错,它确实就是一个循环的概念,或者准确的说是线程中的循环。每一个线程都有其对应的RunLoop,但是默认非主线程的RunLoop是没有运行的,需要为RunLoop添加至少一个事件源,然后去run它。一般情况下我们是没有必要去启用线程的RunLoop的,除非你在一个单独的线程中需要长久的检测某个事件。使用runloop阻塞线程直

2016-08-16 16:24:24 1140

转载 使用GCD

转自:http://blog.devtang.com/2012/02/22/use-gcd/什么是 GCDGrand Central Dispatch (GCD) 是 Apple 开发的一个多核编程的解决方法。该方法在 Mac OS X 10.6 雪豹中首次推出,并随后被引入到了 iOS4.0 中。GCD 是一个替代诸如 NSThread, NSOperationQueue, NSInvo

2016-08-16 15:31:19 335

转载 IOS三种多线程详解

iOS的三种多线程技术1.NSThread 每个NSThread对象对应一个线程,量级较轻(真正的多线程)2.以下两点是苹果专门开发的“并发”技术,使得程序员可以不再去关心线程的具体使用问题ØNSOperation/NSOperationQueue 面向对象的线程技术ØGCD —— Grand Central Dispatch(派发) 是基于C语言的框架,可以充分利

2016-08-16 15:03:54 3368

转载 Objective-C Runtime 运行时

转自:http://www.cnblogs.com/Mr-Lin/p/5771969.htmlObjective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理。这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现等。这种特性意味着Objective-C不仅需要一个编译器,还需要一个运行时系统来执行

2016-08-16 14:56:17 485

原创 总结Obj-C中+load与+initialize的区别

+load 与 +initialize两个类方法在Objective-C中,在于iOS会在运行期提前并且自动调用这两个方法。+load会在类初始加载时调用。+initialize会在第一次调用类的类方法或实例方法之前被调用。这两个方法是可选的,且只有在实现了它们时才会被调用。Apple的文档很清楚地说明了initialize和load的区别在于:load是只要类所在文件被引用就会被调用,

2016-08-16 10:16:28 397

转载 Objective C类方法load和initialize的区别

过去两个星期里,为了完成一个工作,接触到了NSObject中非常特别的两个类方法(Class Method)。它们的特别之处,在于iOS会在运行期提前并且自动调用这两个方法,而且很多对于类方法的规则(比如继承,类别(Category))都有不同的处理。而因为这两个方法是在程序运行一开始就被调用的方法,我们可以利用他们在类被使用前,做一些预处理工作。比如我碰到的就是让类自动将自身类名保存到一

2016-08-16 09:27:13 287

原创 流式套接字(TCP)、数据报套接字(UDP)

套接字是网络通信的基本构件,提供了不同主机间进程双向通信的端点。如果电话,只有当一方拨通另一方时,双方才能建立对话。通过套接字编程,程序可以跳过复杂的网络底层协议和结构,直接编制与平台无关的应用程序。目前,套接字已逐渐成为网络编程的通用接口。   套接字存在于其特定的通信域(即协议族)中,只有隶属于同一协议族的套接字才能建立对话。一般情况下除非通信协议支持,只有相同类型的套接字才能相互

2016-08-09 10:25:37 12223

原创 Socket如何兼容IPV6

IPV6简要:什么是IPv6什么是IPv6?IPv6是下一版本的互联网协议,也可以说是下一代互联网的协议,它的提出最初是因为随着互联网的迅速发展,IPv4定义的有限地址空间将被耗尽,地址空间的不足必将妨碍互联网的进一步发展。为了扩大地址空间,拟通过IPv6重新定义地址空间。IPv6采用128位地址长度,几乎可以不受限制地提供地址。随着5月初Apple明文规定所有开发者

2016-08-08 14:41:30 3478

原创 修改链接参数(Other Linker Flag)

Other Linker Flag参数分析:1.-ObjC这个flag告诉链接器把库中定义的Objective-C类和Category都加载进来。这样编译之后的app会变大(因为加载了其他的objc代码进来)。但是如果静态库中有类和category的话只有加入这个flag才行。2.-all_load这个flag是专门处理-ObjC的一个bug的。用了-ObjC以后,如果

2016-08-08 14:19:02 3547

解析时间DEMO

Time类,可以解析时间用的

2015-05-26

Push通信相关代码

Push相关的通信代码,很适合新手参考。有需要的同学来下载吧。

2014-04-03

实用UITabBar

非常实用的自定义控件UITabBar,简单实用,方便开发,起到了更加美化界面的作用。

2012-09-07

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

TA关注的人

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