- 博客(53)
- 资源 (4)
- 收藏
- 关注
转载 iOS关于RunLoop和Timer
RunLoop这个东西,其实我们一直在用,但一直没有很好地理解它,或者甚至没有知道它的存在。RunLoop可以说是每个线程都有的一个对象,是用来接受事件和分配任务的loop。永远不要手动创建一个runloop,它是跟随着每个线程的。一个RunLoop接收两种source的事件:input source和timer source。同时必须知道的是,input source,runloop是异步交付的
2014-11-18 21:35:33
781
原创 iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
2014-04-17 15:23:17
817
原创 iOS 下引入ttf字体库
iOS系统自带了一些字体,但是这些字体有时候不能够满足我们的要求,所以我们可以用我们自己喜爱的字体添加到程序中。这很简单,主要分为以下几个步骤: 1. 下载一个ttf格式的字体库,拷贝到项目工作中 2. 在项目Info.plist中添加Fonts provided by application ,值为 "xx.ttf" (xx为字体名称) 3. 代码调用 label.font
2014-03-30 15:39:00
1826
原创 推荐一些编程学习网站
Codecademy.comKhanAcademy.org/csCode.orglearncodethehardway.orgUdacityCodeSchoolHarvard's CS50x at edXCoderByte
2014-01-15 13:39:28
953
原创 设计模式之单例模式
///////声明//////本文借阅了一些书籍 //////////////////////单例模式: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。何时使用单例模式1) 类只能有一个实例,而且必须从一个为人熟知的访问点对其进行访问,比如工厂方法2)这个唯一的实例只能通过子类化进行扩展,而且扩展的对象不会破坏客户端代码//如果单例对象要由多个线程访问,
2014-01-09 15:50:06
689
原创 nonatomic、atomic区别
atomic和nonatomic用来决定编译器生成的getter和setter是否为原子操作。atomic设置成员变量的@property属性时,默认为atomic,提供多线程安全。 在多线程环境下,原子操作是必要的,否则有可能引起错误的结果。加了atomic,setter函数会变成下面这样: {lo
2014-01-08 14:09:03
852
原创 新特性-Modules
使用该特性可以简化我们的工作,无需在工程中添加依赖的框架。http://stackoverflow.com/questions/18947516/import-vs-import-ios-7
2014-01-08 13:49:46
682
原创 设计模式之生成器模式
//////////////////声明///文章借阅了一些书籍,仅供学习交流//////////////////////////生成器模式: 将一个复杂对象的构建与它的表现分离,使得同样的构建过程可以创建不同的表现。何时使用生成器模式:1)需要创建涉及各种部件的复杂对象。创建对象的算法应该独立于部件的接配方式。常见例子是构建组合对象2)构建过程需要以不同的方式
2014-01-08 10:05:19
658
原创 设计模式之抽象工厂模式
抽象工厂: 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂与工厂方法模式在许多方面都非常类似,很多人常常搞不清应该在什么时候用哪一个。两个模式都用于相同的目的: 创建对象而不让客户知晓返回了什么确定的具体对象。 抽象工厂模式与工厂方法模式对比 抽象工厂
2014-01-08 09:30:57
787
原创 设计模式之工厂方法模式
///////////////////声明///文章借阅了一些书籍,仅供学习交流//////////////////////////工厂方法也称为虚构器。它适用于这种情况:一个类无法预期需要生成哪个类的对象,想让其子类来制定所生成的对象。何时使用工厂方法:1) 编译时无法准确预期要创建的对象的类2)类想让其子类决定在运行时创建什么3) 类有若干辅助类为其子类,而
2014-01-07 09:20:32
784
原创 CGAffineTransform浅析
CGAffineTransform( 仿射变换) 仿射变换,又称仿射映射,是指在几何中,一个向量空间进行一次线性变换并接上一个平移,变换为另一个向量空间。(维基百科中对仿射变换的定义). 以下是苹果提供的几个相关API,我们可以直接调用//对视图比例缩放CG_EXTERN CGAffineTransform CGAffineTransformScale(C
2014-01-06 14:23:53
1002
原创 设计模式之原型模式
///////声明///////文章借阅了一些书籍,仅供学习交流/////////////////1. 原型模式定义: 应用于"复制"操作的模式。"复制"指用同一模具生产一系列的产品2. 何时使用原型模式 1) 需要创建的对象应独立于其类型与创建方式 2) 要实例化的类是在运行时决定的 3) 不想要与产品的层次相对应的工厂层次 4) 不同类的实例间的差异
2014-01-06 10:16:32
698
原创 iOS支持的字体
Arial HebrewArialHebrew-BoldArialHebrewZapfinoZapfinoOriya Sangam MNOriyaSangamMNOriyaSangamMN-BoldCochinCochinCochin-BoldItalicCochin-I
2014-01-03 13:23:35
1320
原创 使用CocoaPods来做iOS程序的包依赖管理
CocoaPods是一个负责管理iOS项目中第三方开源代码的工具。CocoaPods项目的源码在Github上管理。该项目开始于2011年8月12日,经过一年多的发展,现在已经超过1000次提交,并且持续保持活跃更新。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和更新第三方开源库的时间。1. CocoaPods的安装 Mac下都自带rub
2014-01-02 15:48:23
759
原创 iOS 7 push过程中出现视图叠加重影问题
最近在iOS 7下,使用UINavigationController push一个新的controller的时候,动画过程中rootController的view上的元素总是会有一部分叠加在新的controller的view上,UI方面很不协调.后来发现,由于创建controller 时,view默认的background color为透明色。只要将这个背景色改成非透明色即可!
2013-12-27 13:44:25
3073
原创 NSNotification 同步执行、异步执行
1. NSNotification的同步执行 NSNotification使用的是同步操作。即如果你在程序中的A位置注册了一个observer,在B位置post了一个NSNotification,通知发出后,必须等到A位置的通知回调执行完以后才能返回到A处继续往下执行。因此,不要过多的或者低效的使用NSNotification。2. NSNotification的异步执
2013-12-27 13:07:36
1755
原创 iOS并发编程NSThread、Grand Central Dispatch、Operation Queue
并发的意思就是同时运行多个任务,这些任务可以在单核CPU上以分时(时间共享)的形式同时运行,或者在多核CPU上以真正的并行来运行多任务。 在移动和桌面操作系统中,苹果提供了相同的并发编程API。 NSThread、Grand Central Dispatch(GCD)、NSOperationQueue 线程(thread)是组成进程的子单元,操作系统的调度器可以对线程
2013-12-23 09:40:36
1659
原创 NSOperation、NSOperationQueue浅析
最近在研究NSOperation、NSOperationQueue这2个类,其中走了不少的弯路,特此记录下来,一给自己增加印象,二给后来学习者提供点有用的资料。 NSOperation是个抽象类,并不能直接拿来用,要用得先继承它。苹果封装了NSInvocationOperation和NSBlockOperation这两个类,如果这两个类不能满足要求,我们也可以自己直接继承NSOperati
2013-12-22 14:09:01
871
原创 NSRunLoop浅析
1. NSRunLoop 是iOS消息机制的处理模式 NSRunLoop的作用: 控制NSRunLoop里面线程的执行和休眠,在有事情做的时候使当前NSRunLoop控制的线程工作,没有事情做让当前NSRunLoop的控制的线程休眠。2.runloopmode是一个集合,包括监听:事件源,定时器,以及需通知的runloop observers 模式包括: default模式:几乎包括
2013-12-20 15:57:30
978
原创 [转载] iOS开发分辨率那点事
1 iOS设备的分辨率iOS设备,目前最主要的有3种(Apple TV等不在此讨论),按分辨率分为两类iPhone/iPod Touch普屏分辨率 320像素 x 480像素Retina分辨率 640像素 x 960像素iPad,iPad2/New iPad普屏 768像素 x 1024像素Retina屏 1536像素
2013-11-21 14:34:34
1576
原创 NSAutoReleasePool
一般来说在应用的main thread中, 已经存在了一个autorelease pool. 有两种情况需要开发者自己新建autorelease pool:在main thread中, 在某个方法中出现大量的autoreleased objects, 为了避免memory footprint的增大, 可以手动创建一些autorelease pool用来drain obj
2013-11-19 14:56:21
1009
原创 UIButton 触发两个方法
在开发中偶然发现UIButton能同时响应应两个方法, 但是有先后顺序,导致一个问题纠结了2、3个小时。。。郁闷。。
2013-11-13 22:34:30
950
原创 iOS 7设置状态栏样式
1. 在plist文件中添加View controller-based status bar appearance ,值为NO2. [[UIApplication shareApplication] setStatusBarStyle:UIStatusBarStyleLightContent]注: UIStatusBarStyleLightContent 为黑色背景,白
2013-11-08 15:19:15
1271
原创 iOS 7设置状态栏不透明
iOS 7以后,状态栏都是透明的,这给我们项目中UI适配带来不小的麻烦。我们可以设置状态栏不透明。 在UIViewController中添加如下代码:#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_7_0 self.edgesForExtendedLayout =UIRectEdgeNone; self
2013-10-26 13:07:38
4434
原创 Xcode 5设置Deployment Target
在Xcode5中,要设置Deployment Target为5.x,6.x, 首先要把工程的architecture修改: 这样才能选择5.x和6.x的系统。
2013-10-10 13:31:23
2728
原创 转载-App Store审核指南和iPhone 应用程序用户界面设计指导原则
1. 条款和条件 1.1 为App Store开发程序,开发者必须遵守程序许可协议(PLA)、人机交互指南(HIG)以及开发者和苹果签订的任何协议和合同。以下规则和例子旨在帮助开发者的程序能获得App Store的认可,而不是修改或删除任何其他协议中的条款。 2. 功能 2.1 崩溃的程序将会被拒绝 2.2 有错误的程序将会被拒绝 2.3 跟开发者宣传不符的
2013-09-25 13:39:51
2048
原创 iOS 7下UIButton 设置图片有时候不能正常读取
iOS 7下UIButton 设置图片有时候不能正常读取,可以这样解决。把UIButton初始化方式改成alloc就可以了,至于原因目前还不太清楚。
2013-09-23 21:11:25
1464
原创 ios7上隐藏statusbar
在iOS7中 ,如果你还想用UIApplication 设置 status bar 的话,那你必须在 info.plist 中加入一个键 ”View controller-based status bar appearance“ 并且把它设置为 NO
2013-09-23 21:06:36
1170
Versions 1.3.0版本破解包
2014-03-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人