- 博客(61)
- 资源 (4)
- 收藏
- 关注
原创 iOS数据持久化文件读写之偏好设置
很多iOS应用都支持偏好设置,比如保存用户名、密码、字体大小等设置,iOS提供了一套标准的解决方案来为应用加入偏好设置功能。每个应用都有个NSUserDefaults实例,通过它来存取偏好设置。比如,保存用户名、字体大小、是否自动登录等。NSUserDefaults 基本上支持所有的原生数据类型NSString、 NSNumber、NSDate、 NSArray、NSDictionary、BO
2016-05-20 10:31:02 274
原创 iOS学习39网络之数据请求
1. HTTP和HTTPS协议 1> URL URL全称是Uniform Resource Locator(统一资源定位符)通过1个URL,能找到互联网上唯一的1个资源 URL就是资源的地址、位置,互联网上的每个资源都有一个唯一的URL URL的基本格式=协议://主机地址/路径 http://www.cnblogs.com/gfxxbk/ 协议:不同的协
2016-05-19 16:34:14 1120
原创 [置顶]iOSDay34之UICollectionView
1. 什么是集合视图 在iOS6.0之后, 苹果推出了一个新的继承于 UIScrollView 的视图, UICollectionView , 也被称之为 集合视图. 和 UITableView 共同作为在开发中非常常用的两个视图, 常常作为项目的主界面出现2. 创建 UICollectionView 1> UICollectionView 的实现 UICollectio
2016-05-11 16:44:33 539
原创 [置顶]iOSDay29之UITableView
1. UITableView的概念 1> 概述UITableView 继承于 UIScrollView , 可以滚动UITableView 的每一条数据对应的单元格叫做 Cell , 是 UITableViewCell 的一个对象, 继承于 UIViewUITableView 可以分区显示, 每个分区称为 section , 每一行称为 row, 编号都从0开始系统提供了一
2016-05-11 16:44:30 557
原创 [置顶]iOSDay25之UIScrollView
1. UIScrollView的创建和常用的属性 1> 概述 UIScrollView 是 UIView 的子类, 所以我们可以仿照 UIView 的创建步骤创建一个 UIScrollView UIScrollView 作为所有的滚动视图的基类, 所有学好 UIScrollView 也成为学好 UITableView 和 UICollectionView等滚动视图的前提 UI
2016-05-11 16:44:27 186
原创 iOSDay38网络之数据解析
1. 解析的基本的概念 解析:从事先规定好的格式中提取数据 解析前提:提前约定好格式,数据提供方按照格式提供数据、数据获取方则按照格式获取数据 iOS开发常见的解析:XML解析、JOSN解析2. XML数据结构 1> 概述 XML:Extensible markup language(可扩展标记语言),主流数据格式之一,可以用来存储和传输数据。 2> XML数据格式的
2016-05-11 16:44:22 1150
原创 iOS数据持久化文件读写之偏好设置
很多iOS应用都支持偏好设置,比如保存用户名、密码、字体大小等设置,iOS提供了一套标准的解决方案来为应用加入偏好设置功能。每个应用都有个NSUserDefaults实例,通过它来存取偏好设置。比如,保存用户名、字体大小、是否自动登录等。NSUserDefaults 基本上支持所有的原生数据类型NSString、 NSNumber、NSDate、 NSArray、NSDictionary、BOOL
2016-05-11 16:44:17 195
原创 SQLite错误码
在SQLite中,执行SQL语句的sqlite3_exec()和sqlite3_prepare()两个核心方法的返回值都是一个整型数据,因此,当程序执行出现错误时,我们可以根据执行返回的整型数据来判断错误发生的原因。以下就是SQLite的错误码: 1 #define SQLITE_OK 0 /* 成功 | Successful result */ 2 /* 错误
2016-05-11 16:44:12 858
原创 iOS开发代码规范(通用)
1. 关于命名 1> 统一要求含义清楚,尽量做到不需要注释也能了解其作用,若做不到,就加注释使用全称,不适用缩写 2> 类的命名大驼峰式命名:每个单词的首字母都采用大写字母 例子:MFHomePageViewController后缀要求 ViewController: 使用ViewController做后缀
2016-05-11 16:44:10 208
原创 iOSDay37数据处理之CoreData
1. CoreData数据库框架的优势 1> CoreData历史 CoreData数据持久化框架是Cocoa API 的一部分,首次在iOS5版本的系统中出现,它允许按照实体-属性-值模型组织数据,并以XML、二级制文件或者SQLite数据文件的格式持久化数据。 CoreData主要提供对象 --- 关系映射(ORM)功能,把OC对象转化为数据保存到文件,也可以数据转化为OC对象
2016-05-11 16:44:05 2544
原创 iOS中的单例
单例模式的特点一个类中只能有一个实例对象单例生命周期和操作的生命周期一样长单例模式的优点:由于单例模式在内存中只有一个实例,减少了内存开支,特别是一个对象需要频繁地创建、销毁时,而且创建或销毁时性能又无法优化,单例模式的优势就非常明显了。 由于单例模式只生成一个实例,所以减少了系统的性能开销,当一个对象的产生需要比较多的资源时,如读取配置
2016-05-11 16:44:00 242
原创 iOSDay36数据处理之SQLite数据库
1. 数据库管理系统 1> SQL语言概述 SQL: SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集, 是一种功能齐全的数据库语言。 2> 常见的数据库 MySQL: MySQL是一个精巧的SQL数据库管理系统, 而且是开源的数据管理系统。MySQL 主要目标是快速、健壮和易用。 由于它的强大功能、灵活性
2016-05-11 16:43:55 1219
原创 UIImage两种初始化的区别
UIImage可以通过以下两种方式进行初始化: 1 //第一种初始化方式:【注意使用这种初始化的时候如果是png格式的可以不给后缀名,根据屏幕的的分辨率去匹配图片】2 3 UIImage *image = [UIImage imageNamed:@"v_red_heart_selected"]; 1 //第二种初始化方式:【必须拼接图片的全名称,否则ima
2016-05-11 16:43:52 347
原创 iOSDay35数据处理之文件读写
1. 沙盒机制 1> 沙盒概述 每一个iOS应用程序都会为自己创建一个文件系统目录(文件夹), 这个独立、封闭、安全的空间,叫做沙盒 注:① 每一个应用程序都会拥有一个应用程序沙盒 ② 应用程序沙盒就是一个文件系统目录 2> 沙盒机制iOS中沙盒机制是一种安全体系它规定了应用程序只能在为该应用程序创建的文件夹(沙盒)内访问文件,
2016-05-11 16:43:47 1689
原创 04_Swift2基础之类型安全和类型推测+字面量+类型别名
1. 类型安全和类型推测 1> 类型安全 Swift 是一个 _类型安全(type safe)_ 的语言。类型安全的语言可以让你清楚地知道代码要处理的值的类型。如果你的代码需要一个`String`,你绝对不可能不小心传进去一个`Int`。 由于 Swift 是类型安全的,所以它会在编译你的代码时进行 _类型检查(type checks)_ ,并把不匹配的类型标记为错误。这可以让
2016-05-11 16:43:42 191
原创 03_Swift2基础之基本数据类型+相互转换
1. 整数 整数就是没有小数部分的数字,比如`42`和`-23`。整数可以是`有符号`(正、负、零)或者`无符号`(正、零)。 Swift 提供了8,16,32和64位的有符号和无符号整数类型。这些整数类型和 C语言的命名方式很像,比如8位无符号整数类型是`UInt8`,32位有符号整数类型是`Int32`。就像 Swift 的其他类型一样,整数类型采用大写命名法。 1> 整数范围
2016-05-11 16:43:39 809
原创 02_Swift2基础之常量和变量+注释+分号
1. 常量和变量常量 和 变量 把一个名字(比如 'number' 或者 'welcomeMessage')和一个指定类型的值(比如数字'10'或者字符串 ' "Hello" ' )关联起来。常量的值一旦设定就不能改变,而变量的值可以随意更改。 1> 声明变量和常量 常量 和 变量 必须在使用前声明,用 'let' 来声明 常量,用 'var' 来声明 变量。下面的例子展示了如何用
2016-05-11 16:43:34 164
原创 01_Swift2基础之Swift简介+创建
1.Swift 1> Swift初影响Swift 是新一代的 iOS、OS X 和 watchOS 和 tvOS 的app开发编程语言。中文名"雨燕",寓意为敏捷、灵巧而又不失简洁。Swift 与 Java、Javascript、C# 等语法类似,上手极快。 2> Swift 的出世 Swift是明星编程语言,1.0版本于2014年6月
2016-05-11 16:43:32 264
原创 自定义UICollectionViewLayout之瀑布流
目标效果因为系统给我们提供的 UICollectionViewFlowLayout 布局类不能实现瀑布流的效果,如果我们想实现 瀑布流 的效果,需要自定义一个 UICollectionViewLayout 类,实现瀑布流效果。效果如右图。依赖工具:我们需要一个图片大小和图片地址的Josn数据, 和 SDWebImage图片加载的第三方工具
2016-05-11 16:43:27 232
原创 iOSDay33之可视化编程-StoryBoard
1. storyBoard与xib 1> 概述iOS下可视化编程分为两种方式: xib 和 storyboard在使用 xib 和 storyboard 创建 GUI 过程中,以 XML 文件格式存储在 Xcode 中,编译时生成 nib 的二进制文件. 在运行时, nib 文件被加载并且开始创建和实例化 GUI 元素 2> 对比 相同点:都属于 IB 编程的方式,
2016-05-11 16:43:22 2187
原创 iOSDay32之UIKit框架-可视化编程-XIB
1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显示的计算机操作用户界面。 Interface Builder (简称IB) : 是MAC OS X 平台下用于设计和测试图形用户界面 (GUI) 的应用程序。代码 和 IB 都可以生成 GU
2016-05-11 16:43:17 5649
原创 iOSDay31之UITableVIewCell自定义
1. 自定义Cell 1> 为什么要自定义CellUITableView 中系统的Cell共提供了四种默认样式, 分别是: UITableViewCellStyleDefault UITableViewCellStyleValue1 UITableViewCellStyleValue2 UITableViewCellStyl
2016-05-11 16:43:12 392
原创 iOSDay30之UITableView编辑
1. UITableView编辑 1> UITableView 编辑流程 2> UITableView 编辑步骤(四步) ① 第一步 : 让 TableView 处于编辑状态(在按钮点击事件方法中) 1 // 优化写法2 // 不带动画3 _rootView.tableView.editing = !_rootView.tableVie
2016-05-11 16:43:07 293
原创 iOSDay28之UITabBarController
1. 标签视图控制器 -- UITabBarController 视图(UIView) ---> 图层 ---> 子视图视图控制器(UIViewController) ---> 管理视图导航控制器(UINavigationController) ---> 管理有层次关系的视图控制器标签视图控制器(UITabBarController) ---> 管理没有层次关系的视图控制器
2016-05-11 16:43:00 232
原创 iOS之10-牛刀小试
1.iOS系统架构 iOS的系统架构分为四个层次核心操作系统层 (Core OS) 它包括 内存管理 , 文件系统 , 电源管理以及一些其他的操作系统任务, 它可以直接和硬件设备进行交互核心服务层 (Core Services) 我们可以通过它来访问iOS的一些服务,比如网络连接 , 文件访问 , 数据库 , 用户定位等媒体层 (Media)
2016-05-11 16:42:56 221
原创 iOSDay27之界面通信
1. 属性传值(前面的界面给后面传值) 第一步: 在 SecondViewController.h 文件里定义一个存放传过来值的变量 contents1 #import 2 3 @interface SecondViewController : UIViewController4 5 // 第一步:声明属性,用于存放传过来的值6 @property (nonatom
2016-05-11 16:42:53 627
原创 iOSDay26之UINavigationController
1. UINavigationController 1> 概述 UINavigationController : 导航控制器, 是 iOS 中最常用的多视图控制器之一, 用它来管理多个视图控制器 导航控制器可以称之为是 : 管理控制器的控制器, 主要管理有层次递进关系的控制器 2> 创建 UINavigationController 继承与 UIController ,
2016-05-11 16:42:50 262
原创 iOSDay24之UIControl及其子类
1. UIControl初识 1> 概述 UIControl是有控制功能的视图( 如UIButton、UISlider、UISegmentedControl等)的父类 只要跟控制有关的控件都是继承于该类 UIControl这个类通常我们并不直接使用,而是使用其子类 2> 事件响应的三种形式 : 基于触摸 , 基于值 , 基于编辑 3> UIControl常用的方法
2016-05-11 16:42:42 169
原创 键盘回收
键盘回收是一个事件,因此应该写在 xxxViewController 中!键盘回收的两种方式1. 点击return回收键盘 ① 设置代理 1 textField.delegate = self; ② 遵守协议在textField所在的类中遵守 UIText
2016-05-11 16:42:38 230
原创 iOSDay23之事件处理
1. 事件的基本概念 1> 概述 事件是当用户手指触击屏幕及在屏幕上移动时,系统不断发送给应用程序的对象。 系统将事件按照特定的路径传递给可以对其进行处理的对象 在iOS中,一个UITouch对象表示一个触摸,一个UIEvent对象表示一个事件。事件对象中包含与当前多点触摸序列相对应的所有触摸对象,还可以提供与特定视图或窗口相关联的触摸对象。 2> 事件类型2.
2016-05-11 16:42:35 130
原创 iOSDay22之视图控制器
1.自定义视图 1> 概述 定义视图:系统标准UI之外,自己组合而出的新的视图。 定义视图的优点: iOS提供了很多UI组件,借助它们我们可以实现不同的功能。尽管如此,实际开发中,我们还需要自定义视图。积累自己的代码库,方便开发。自己封装的视图,能像系统UI控件一样,用于别的项目中,能大大降低开发成本,提高开发效率。 高质量代码的特点:可复用,可移植,精
2016-05-11 16:42:30 148
原创 iOSDay21之UILabel, UITextField, UIButton, UIImageView
1.UILabel 1> 概述 UILabel (标签): 是显示文本的控件。在App中 UILabel 是出现频率最高的控件 UILabel 是 UIView 子类,作为子类一般是为了扩充父类的功能, UILabel 扩展了文字显示的功能, UILabel 是能显示文字的视图。 2> 创建UILabel的步骤 创建UILabel与创建UIView的步骤很相似。
2016-05-11 16:42:24 190
原创 iOSDay20之UIView
1. UI编程概述 UI的本意是用户界面,是英文 User 和 Interface 的缩写。 UI设计则是指对软件的人机交互、操作逻辑、界面美观的整体设计。 好的UI设计不仅是让软件变得有个性有品位,还要让软件的操作变得舒适简单、自由,充分体现软件的定位和特点。 软件设计可分为两个部分:编码设计与UI设计。 从字面上看是用户与界面两个部分组成,但实际上还包括用户与界面之
2016-05-11 16:42:19 117
原创 iOSDay19之OC类的扩展
为一个类扩展功能:1.子类化;2.修改源代码;3.定义协议;4.Category:类目1、Category 1> Category的作用Category:也叫分类,类目,是为没有源代码的类扩充功能。扩充的功能会成为原有类的一部分,
2016-05-11 16:42:14 509
原创 iOSDay18之OC内存管理高级
1、属性的内存管理 1> 属性的语义特性 2> assign下的属性内部实现 1 @property (nonatomic, assign) NSString *name; 2 @synthesize name = _name; 3 // setter 4 - (void)setName:(NSString *)name { 5 _name = name
2016-05-11 16:42:09 148
原创 iOSDay17之OC内存管理
1、内存管理的方式 1> iOS应用程序出现Crash(闪退),90%的原因是因为内存问题。 2> 内存问题野指针异常:访问没有所有权的内存,如果想要安全的访问,必须确保空间还在内存泄露:空间使用完之后没有及时释放过度释放:对同一
2016-05-11 16:42:04 265
原创 iOS之09-特有语法
1、分类 - Category 1> 基本用途 分类:可以给某个类扩充一些方法(不修改原来的代码) 如何在不改变原来类模型的前提下,给类扩充一些方法? 有2种方式: 继承; 分类(Categoty)。 2> 格式 分类的声明 @interface 类名(分类名称) // 方法声明 @end 分类的声明 @implementation
2016-05-11 16:41:59 136
原创 iOSDay16之OC集合遍历和数组排序
1、集合遍历 1> 遍历 集合(Collection):OC中提供的容器类:数组,字典,集合。 遍历:对集合中元素依次取出的过称叫做遍历。 三种方式:① for循环遍历; ② NSEnumerator遍历; ③ for...in遍历 2> for循环遍历 ① 数组遍历 原理:通过for循环的循环变量用作数组元素下标来获取不同下标的元素。 循环次数就
2016-05-11 16:41:56 231
原创 iOSDay15之OC集合
1、数组类 1> 回顾C语言数组 数组是一个有序的集合, 来存储相同数据类型的元素。 通过下标访问数组中的元素,下标从 0 开始。 2> 数组 数组是一个有序的集合,OC中的数组只能存储对象类型, 但是对于对象的类型没有限制。 通过下标访问数组元素,下标从 0 开始。 NSArray:不可变数组,即:对象创建好以后,数组中元素个数不能发生变化。 NSMu
2016-05-11 16:41:52 183
原创 iOSDay14之OC NSNumber + NSValue
1、NSNumber 数值类。 作用:实现基本数据类型与OC对象类型的相互转化。 1> NSNumber创建对象1 // 初始化方法2 NSNumber *num1 = [[NSNumber alloc] initWithInt:39];3 // 类方法4 NSNumber *num2 = [NSNumber numberWithInteger:10000];5
2016-05-11 16:41:47 190
iOS 核心动画编程指南
2018-08-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人