ios开发
文章平均质量分 86
Albert_H
这个作者很懒,什么都没留下…
展开
-
【IOS 开发学习总结-OC-32】★OC之foundation 框架——谓词(NSPredicate)
NSPredicate用于定义一个逻辑条件,通过该条件可执行搜索或内存中的过滤操作。定义谓词谓词由NSPredicate对象来代表,它有3个子类:NSComparisonPredicate,NSCompoundPredicate,NSExpression。 虽然程序实际创建的通常是NSPredicate的子类的实例,但实际编程中会直接使用NSPredicate的predicateWithForma原创 2015-10-06 09:03:56 · 1202 阅读 · 0 评论 -
【IOS 开发学习总结-OC-66】Quartz 2D绘图(4-3)——绘制曲线+在内存中绘图+绘制位图
【IOS 开发学习总结-OC-66】Quartz 2D绘图(中)——绘制曲线+在内存中绘图+绘制位图绘制曲线Quartz 2D提供了CGContextAddCurveToPoint()和CGContextAddQuadCurveToPoint()两个函数向CGContextRef的当前路径上添加曲线,前者用于添加贝塞尔曲线,后者用于添加二次曲线。绘制贝塞尔曲线的示意图如图12.10所示。从图12.1转载 2015-10-23 16:42:56 · 784 阅读 · 0 评论 -
【IOS 开发学习总结-OC-67】Quartz 2D绘图(4-4)——图形变换+填充处理+core image 滤镜
【IOS 开发学习总结-OC-67】Quartz 2D绘图(4-4)——图形变换+填充处理+core image 滤镜Quartz 2D提供了坐标变换支持,这样开发的时候 我们不许繁琐计算每个点坐标,只需对坐标系统整体变换即可。使用坐标变换Quartz 2D坐标变换的方法: 1. CGContextTranslateCTM(<#CGContextRef _Nullable c#>, <#CGFl原创 2015-10-23 16:49:01 · 1493 阅读 · 0 评论 -
[转][译]关于iOS和OS X废弃的API你需要知道的一切
原文: Everything You Need to Know about iOS and OS X Deprecated APIs如你所知,已废弃(Deprecated)的API指的是那些已经过时的并且在将来某个时间最终会被移除掉的方法或类。通常,苹果在引入一个更优秀的API后就会把原来的API给废弃掉。因为,新引入的API通常意味着可以更好的发挥新硬件或操作系统的性能,或者可以使用一些在构建原有转载 2015-10-08 09:39:33 · 501 阅读 · 0 评论 -
【IOS 开发学习总结-OC-64】Quartz 2D绘图(4-1)——Quartz 2D绘图基础+点线模式
【IOS 开发学习总结-OC-64】Quartz 2D绘图(上)——Quartz 2D绘图基础+点线模式Quartz 2D绘图的核心API是CGContextRef,该API专门用于绘制各种图形。Quartz 2D绘图基础:CGContextRef使用Quartz 2D绘图的关键步骤有两步: 1. 获取CGContextRef; 2. 调用CGContextRef的方法进行绘图。不同场景下获取C原创 2015-10-23 16:36:03 · 1322 阅读 · 0 评论 -
【IOS 开发学习总结-OC-10】★ objective-c面向对象之——成员变量,模拟类变量,单例模式
OC 中变量根据定义位置的不同,可以分为3大类:成员变量,局部变量和全局变量。 之前提到过方法是由函数演化而来的,所以不管是方法中定义的变量,还是函数中定义的变量,都是局部变量。成员变量及其运行机制成员变量:指的是在类接口部分或类实现部分定义的变量。 说明:objective-c 的成员变量都是实例变量,并不支持真正的类变量。 实例变量从该类的实例被创建开始起存在,直到系统完全销毁这个实例,实原创 2015-09-20 21:54:44 · 1597 阅读 · 1 评论 -
【IOS 开发学习总结-OC-8.1】★★ objective-c面向对象之——类和对象(上)
OC 是面向对象的语言。类,可以被认为是一种自定义的数据类型,使用它可以定义变量。所有用类定义的变量都是指针类型的变量,他们将会指向该类的类型。——就像现实世界中描述某一类对象的共同特征,对象是类的具体存在。 objective-c 也支持面向对象的三大特征:封装,继承和多态。类和对象所有的类都是指针类型的变量。定义类面向对象的程序设计过程有2个重要概念:类(class) 和对象原创 2015-09-17 16:03:57 · 1483 阅读 · 0 评论 -
【IOS 开发学习总结-OC-8.2】★★ objective-c面向对象之——类和对象(下)
知识点安插:如果访问权限允许,objective-c 允许直接通过对象来访问成员变量。语法格式:对象->成员变量名;对象与指针这里沿用上篇objective-c面向对象之——类和对象(上)的代码。 在 FKPersonTest.m中,有这样的代码: FKPerson* person = [[FKPerson alloc] init]; 这行代码产生了2个东西,一个是 person 变量,一个原创 2015-09-20 16:14:30 · 723 阅读 · 0 评论 -
【IOS 开发学习总结-OC-9】★ objective-c面向对象之——方法
objective-c 的方法不能独立存在,所有的方法都必须定义在类里。方法在逻辑上,要么属于类,要么属于对象。方法的所属性不难发现,方法在语法上和功能上,方法与函数很相似。其实,方法是由传统的函数发展而来的。 objective-c 调用函数时的传参机制和调用方法时的传参机制是一样的,都是值传递,都是传入参数的副本。方法与传统的函数的显著不同:在结构化编程语言里,函数是一等公民。整个程序是由一个原创 2015-09-20 17:47:22 · 839 阅读 · 0 评论 -
【IOS 开发学习总结-OC-65】Quartz 2D绘图(4-2)——绘制文本+设置阴影+使用路径
【IOS 开发学习总结-OC-65】Quartz 2D绘图(中)——绘制文本+设置阴影+使用路径绘制文本CGContextRef为绘制文字提供了如下函数。CGAffineTransform CGContextGetTextMatrix(CGContextRef c):获取当前对文本执行变换的变换矩阵。CGPoint CGContextGetTextPosition(CGContextRef c):获转载 2015-10-23 16:39:34 · 2041 阅读 · 0 评论 -
【IOS 开发学习总结-OC-36】★文件 I/O——NSFileHandle&NSURL&NSBundle
NSFileHandle处理文件 IO使用NSFileHandle的基本步骤如下: 创建一个NSFileHandle,该NSFileHandle将会打开指定的文件; 对打开的文件执行IO操作; 关闭文件。 NSFileHandle提供的常用方法如下: 1. + (nullable instancetype)fileHandleForReadingAtPath:(NSStr原创 2015-10-07 21:30:11 · 3148 阅读 · 0 评论 -
【IOS 开发学习总结-OC-33】★★objective-c之文件 I/O概述+NSData/NSMutableData
I/O是指 objective-c 的输入与输出。通过I/O,应用程序可以把程序运行状态 保存到磁盘文件或网络中——这样可保证这程序从这些文件或网络上恢复程序的运行状态。 objective-c 提供了丰富的 I/O 相关的 API: 1. NSFileManager:如果,只需要管理文件和目录,程序可使用NSFileManager 进行管理,包括创建,删除,移动,复制文件等; 2. NSFi原创 2015-10-06 16:34:23 · 1520 阅读 · 1 评论 -
【IOS 开发学习总结-OC-34】★★文件 I/O——NSFileManager 管理文件和目录
NSFileManager代表文件管理器。当开发者使用NSFileManager执行移动 ,复制,链接,删除文件或目录 时,程序可以为 NSFileManager提供配套的事件委托(实现了 NSFileManagerDelegate 协议的对象),该委托对象用于 确保移动 ,复制,链接,删除操作的成功过完成,并为前面的几种操作提供相应的处理方法。NSFileManager采用文件名作为文件的唯一标识原创 2015-10-07 09:03:08 · 1640 阅读 · 0 评论 -
【IOS 开发学习总结-OC-61】IOS 的自动旋转
【IOS 开发学习总结-OC-61】IOS 的自动旋转很多的应用都支持横屏和竖屏2种运行模式。模式切换时会自动调整界面,以保证在2种模式下应用都运行良好。——这就是自动旋转机制。当然这2种方式,根据需要来进行实现。 在竖屏旋转到横屏后,状态栏会占用显示的高度20px。通常可以隐藏状态栏。——在应用程序委托类的- (BOOL)application:(UIApplication *)applica原创 2015-10-21 20:30:20 · 2110 阅读 · 0 评论 -
【IOS 开发学习总结-OC-62】IOS 应用的生命周期
【IOS 开发学习总结-OC-62】IOS 应用的生命周期IOS 应用的运行有前台运行和后台运行的差异。当应用在前台与后台之间切换的时候,系统会发出通知,回调应用程序委托类的特定方法,我们可以通过重写这些方法来改变应用程序在前台和后台的运行行为。IOS应用程序的状态IOS应用程序有如下几种状态; 1. not running:——程序未启动或被系统禁止; 2. inactive(不活动):在原创 2015-10-21 21:09:25 · 1660 阅读 · 1 评论 -
【IOS 开发学习总结-OC-7.11-★】 objective-c——指针数组和指向指针的指针
指针数组与 main() 函数形参有时需要一次声明具有多个相同特征的指针变量,此时可借助,指针数组来实现。指针数组使用最多的地方是处理字符串数组的情况,由于字符串本身需要使用 char * 型指针变量来表示,当程序中有多个字符串要保存时,就可以借助指针数组。声明指针数组与声明普通数组的语法类型:语法格式:类型* 数组变量[长度]; 注意与类型 (*变量名)[长度];的语法格式相区分。 区别在于:原创 2015-09-17 15:36:03 · 3064 阅读 · 0 评论 -
【IOS 开发学习总结-OC-63】UIImage 与 CGImage,CGImageRef
【IOS 开发学习总结-OC-63】UIImage 与 CGImage,CGImageRefUIImage 专门用来显示各种位图,支持的图片格式有: 当系统内存紧张时,UIImage会将图片数据从UIImage对象中清理出去来节省内存使用——但不清理对象本身。当程序使用一个图片被清理后的UIImage对象时,该UIImage会自动从原始的图片文件中加载图片数据。 注意:尽量避免UIImage加原创 2015-10-21 22:32:05 · 3741 阅读 · 0 评论 -
【IOS 开发学习总结-OC-35】★文件 I/O——NSPathUtilities.h管理路径+NSProcessInfo获取进程信息
NSPathUtilities.h管理路径NSPathUtilities.h包含了对 NSString 类的扩展,从而为 NSString 类新增了一些专门用于操作路径的方法。——主要作用是更方便地操作路径。对 NSString 类扩展了如下方法:+ (NSString *)pathWithComponents:(NSArray<NSString *> *)components;——根据compo原创 2015-10-07 11:30:27 · 1444 阅读 · 0 评论 -
【IOS 开发学习总结-OC-37】★文件 I/O——对象归档
何为对象归档?对象归档——就是用某种格式把一个或多个对象保存到指定文件中,方便以后从文件中恢复它们。类似于其他语言中的序列化机制。 归档包括2方面的操作:1,将对象写入指定文件;2,从文件中恢复这些对象。使用NSKeyedArchiver&NSKeyedUnarchiver归档和解档使用NSKeyedArchiver将对象进行归档,若要恢复这些对象,要用NSKeyedUnarchiver。 N原创 2015-10-08 14:40:56 · 1475 阅读 · 1 评论 -
【IOS 开发学习总结-OC-11】★objective-c面向对象之——封装和访问控制符
封装封装的定义面向对象的三大特征(封装,继承,多态)之一。指的是:将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问。良好的封装,可以实现的目的对一个类或对象实现良好的封装,可以实现的目的有: 1. 隐藏类的实现细节; 2. 使使用者只能通过事先预定的方法来访问数据,从而可以在该方法里加入控制逻辑,限制对成员变量的不合理访问。原创 2015-09-21 08:47:35 · 1559 阅读 · 0 评论 -
【IOS 开发学习总结-OC-38】★ios入门 ——ios项目基础之知识点拾贝
【IOS 开发学习总结-OC-38】★ios入门 ——ios项目基础之知识点拾贝项目创建策成功后,command+1到command+7这7个快捷键可打开不同的导航面板。xcode用红色标识该实际文件并不存在。move to Trash与remove reference的区别 : move to Trash:将文件彻底删除到垃圾桶 remove reference:删除引用——只是原创 2015-10-10 10:16:49 · 1191 阅读 · 0 评论 -
【IOS 开发学习总结-OC-39】★★ios开发之 MVC 模式
MVC——Mode(模型),View(视图),controller(控制器)这三部分以最小的耦合协同工作,提高应用的可扩展性和可维护性。MVC是所有面向对象程序设计语言都应该遵守的规范。经典的 MVC 模式经典的 mvc模式中,事件由控制器处理,控制器根据事件的类型改变模型或视图,反之也是如此。——详细的说就是:每个模型对应一系列的视图列表,这种对应关系通常通过注册来完成——把多个视图注册到同一个模原创 2015-10-10 13:37:04 · 1335 阅读 · 0 评论 -
【IOS 开发学习总结-OC-16】★★objective-c面向对象之——类的继承
类的继承继承是面向对象的三大特征(封装,多态,继承)之一,也是实现软件复用的重要手段。objective-c 继承是单继承,每个子类只有一个父类。原创 2015-09-24 14:15:55 · 1033 阅读 · 0 评论 -
【IOS 开发学习总结-OC-45】★★ios开发之UI控件——UISegmentedControl与UIImageView
UISegmentedControl在头文件中是这样的@interface UISegmentedControl : UIControl <NSCoding>,它继承了UIControl。可以作为活动控件,直接绑定 IBAction 方法。分段控件是个啥?它是可以提供一栏按钮的控件,但每次只能激活其中一个按钮。就像这样:一般什么时候使用分段控件呢?当程序需要输入的不仅仅是布尔值(2个选项),而是多个原创 2015-10-13 18:06:21 · 1086 阅读 · 0 评论 -
【IOS 开发学习总结-OC-46】★ios开发之UI控件——UIProgressView 与 UISlider(另:可拉伸图片)
UIProgressView——进度条广义的进度条,包括UIProgressView与UIActivityIndicatorView。 UIProgressView——用于显示某耗时操作完成的百分比; UIActivityIndicatorView——显示一个旋转的齿轮,显示某个耗时操作正在执行中,但不限百分比。UIProgressViewUIProgressView直接继承了 UIVi原创 2015-10-13 22:12:58 · 2769 阅读 · 0 评论 -
【IOS 开发学习总结-OC-48】★★ios开发之UI控件——UIDatePicker与 UIPickerView
【IOS 开发学习总结-OC-48】★★ios开发之UI控件——UIDatePicker与 UIPickerViewUIDatePicker控件——日期选择器用来选择日期与时间,也可以作为倒计时控件。UIDatePicker继承了 UIControl——可作为活动控件使用,与用户进行交互,既可以在 interface builder,也可以在代码中绑定事件处理方法。 属性面板简要说明: 1. m原创 2015-10-15 11:09:25 · 1264 阅读 · 1 评论 -
【IOS 开发学习总结-OC-47】★ios开发之UI控件——UIAlertView与 UIActionSheet
【IOS 开发学习总结-OC-47】★ios开发之UI控件——UIAlertView与 UIActionSheetUIAlertView与 UIActionSheet都是弹出式对话框,它们显示出来的时候,不能与其他控件发生交。它们的区别在于:前者的弹出位置在屏幕中央,而后者显示在屏幕底部弹出。这2个控件都只能用代码添加,无法在界面设计文件中添加。UIAlertView——警告框UIAlertView原创 2015-10-15 10:47:38 · 1411 阅读 · 0 评论 -
【IOS 开发学习总结-OC-49】★★ios开发之UI控件——UIStepper与UIWebView
【IOS 开发学习总结-OC-49】★★ios开发之UI控件——UIStepper与UIWebViewUIStepper——微调器UIStepper如下图,控件上包括+,—两个按钮。——用于控制某个值的增,减。继承与 UIControl 基类,默认是活动控件,可与用户进行交互。UIStepper属性面板: 属性说明: - value: minimum,maximum:——该控件最小值,原创 2015-10-15 11:16:07 · 1219 阅读 · 0 评论 -
【IOS 开发学习总结-OC-15】objective-c面向对象之——对象初始化
创建对象有2种方法(本质是一样的,都是用 alloc 方法为对象分配内存空间)。 1.[[类名 alloc]init]; 2.[类名 new];为对象分配内存空间我们知道无论创建哪个对象,总需要先调用该类的 alloc 类方法来分配内存,这个alloc 类方法来自 NSObject, 而所有的 objective-c 类都是NSObject的子类。所以,所有的类都可以调用 alloc 方法来进行原创 2015-09-24 10:03:28 · 2174 阅读 · 0 评论 -
【IOS 开发学习总结-OC-14】★★★objective-c面向对象之——KVO(键值监听)
KVO:键值监听,全称 keyValueObserving,是观察者模式的一种。NSKeyValueObserving协议为 KVO提供支持。NSObject 遵守了该协议,因此NSObject的子类(所有 oc 类都是NSObject的子类)都可以使用该协议中的方法。监听器的一些常用方法下面是关于监听器的一些常用方法: 方法名 用途 addObserver: forKeyPath: op原创 2015-09-22 16:08:22 · 755 阅读 · 0 评论 -
【IOS 开发学习总结-OC-12】★objective-c面向对象之——合成存取方法与点语法
合成存取方法前面我们介绍了为成员变量自己实现 setter 方法和 getter 方法,但如果一个了类中有很多成员变量时,会非常的不便。 objective-c从 OC 2.0版本开始,自动合成了setter 方法和 getter 方法。而且,如果开发者需要自己控制某个setter 方法和 getter 方法的实现时,可以自己提供 setter 方法和 getter 方法,开发者提供的setter原创 2015-09-21 13:43:47 · 1916 阅读 · 1 评论 -
【IOS 开发学习总结-OC-40】★★ios开发之事件机制——控件获取方式与事件处理方式
使用 IOS 的事件机制,可以实现与用户的交互。ios程序获取控件的2种方式: 通过 IBOutlet 连接来获取控件 ; 通过为控件指定Tag 属性来获取控件。 通过 IBOutlet 连接来获取控件IBOutlet是 什么呢 ?它是个特殊的属性,可建立与界面设计文件中控件的关联。 简单示意图: 看图示到第4步时,需要选中控件然后按住 control+鼠标左键,从可原创 2015-10-11 08:20:54 · 1809 阅读 · 0 评论 -
【IOS 开发学习总结-OC-13】★★objective-c面向对象之——KVC(键值编码)
KVCKVC:键值编码,全称 key value coding。KVC 是 objective-c 支持的一种允许以字符串形式间接操作对象的属性的灵活的操作方式。原创 2015-09-21 20:48:51 · 794 阅读 · 1 评论 -
【IOS 开发学习总结-OC-41】★★ios开发——代码控制 UI 界面与 UI 控件的自定义
代码控制界面与故事板或 xib 文件 控制界面的本质是一样高的:都是把 UI 控件作为一个积木块,然后把它们组合起来。 提示说明: 纯代码的方式开发 IOS 应用 并不是最好的开发方式——开发步骤繁琐,而且,是所有创建程序界面的代码都有应用 程序 委托对象的方法负责完成,这并不符合 MVC 设计原则——这不利于程序组件的解耦。有父容器后要写的三段代码一旦程序有了 UIView 作为容器,接下原创 2015-10-11 10:38:10 · 1360 阅读 · 0 评论 -
【IOS 开发学习总结-OC-42】★ios开发——UI控件之UIControl基类
开发应用程序时,我们可以使用UIControl控件与用户交互。但一般不会直接使用UIControl控件,而是使用它的子类。 UIControl这个基类,主要定义了所有子类的通用接口和行为结构。 为什么是这样的呢? 因为所有的UIControl的子控件都是能与用户交互的控件,所以UIControl的主要角色是:定义通用接口,并为这些活动控件的事件机制提供通用的实现——当活动控件发生指定的事件时,原创 2015-10-11 14:25:29 · 1418 阅读 · 0 评论 -
IOS开发——隐藏键盘的4种方法
IOS开发隐藏键盘的4种方法开发的app中常会用到键盘输入完成后隐藏键盘的情况.在此总结了4种方法来实现我们的目的.方法一——delegate方式第一种隐藏键盘的方法,称为delegate三步法: 1. 遵循(委托/代理); 2. 调用; 3. 关联头文件(ViewController.h)中遵循代理 。 代码如下:#import <UIKit/UIKit.h> @interface Vi原创 2015-10-12 11:19:39 · 3381 阅读 · 0 评论 -
【IOS 开发学习总结-OC-43】★ios开发——UIButton(按钮)与 UISwitch(开关按钮)
UIButton——按钮这是继承了 UIControl 基类的普通 UI 控件,默认属于活动控件——可 与用户交互,激发相应的事件 处理方法 。添加按钮方法有2种(本质相同) : ①在 interface builder 中将按钮拖入界面设计文件; ②通过代码创建 UIButton。 界面设计文件中,打开UIButton的属性面板,概要说明如下: 详细说明: 1. Type: 该类型列原创 2015-10-11 22:04:37 · 2826 阅读 · 0 评论 -
【IOS 开发学习总结-OC-44】★★ios开发之UI控件——文本框与多行文本控件(彩蛋——上拉刷新一般实现代码)
文本框控件UITextFieldUITextField在头文件中的定义为@interface UITextField : UIControl <UITextInput, NSCoding>。 UITextField继承了 UIControl 控件,因此它可作为活动控件使用。添加方式可以在界面设计文件中添加,也可以在代码中添加,本质一样。Xcode 中UITextField属性控制面板: 属性捡要原创 2015-10-12 22:47:44 · 2956 阅读 · 0 评论 -
【IOS 开发学习总结-OC-50】★ios开发之UI控件——UIToolBar(工具栏)
【IOS 开发学习总结-OC-50】★ios开发之UI控件——UIToolBar(工具栏)UIToolBarUIToolBar继承了 UIView, 通常作为多个 UIBarButtonItem 容器,每个UIBarButtonItem代表工具条上的一个控件。UIToolBar可以被放在应用界面的任意位置,通常是放在应用界面的顶端或者底端。UIToolBar的用法使用UIToolBar最简单的方法是原创 2015-10-15 14:34:37 · 1365 阅读 · 0 评论 -
【IOS 开发学习总结-OC-1】objectiveC &ios
objective-C objective-C 是C 语言为基础的C 语言的超集。是苹果公司"专属"的编程语言。这里不过多介绍 OC语言的的诞生与发展。OC 语言已经诞生30多年了,已经算比较老了。随着 swift 语言的推出及不断完善,未来更为强大的 swift 语言替代 OC 只是个时间问题。但现在开发 IOS 的主流语言还是 OC,而且很多以前开发的应用都是 OC 语言开发的原创 2015-09-10 18:35:36 · 1119 阅读 · 0 评论