iOS
文章平均质量分 65
nineteen_
这个作者很懒,什么都没留下…
展开
-
iOS单例设计模式详细讲解(单例设计模式不断完善的过程)
在iOS中有很多的设计模式,有一本书《Elements of Reusable Object-Oriented Software》(中文名字为《设计模式》)讲述了23种软件设计模式,这本书中的设计模式都是面向对象的,很多语言都有广泛的应用,在苹果的开发中,当然也会存在这些设计模式,我们所使用的无论是开发Mac OX系统的Cocoa框架还是开发iOS系统的Cocoa Touch框架,里面的设计模式也原创 2015-08-22 14:34:41 · 2898 阅读 · 0 评论 -
iOS中copy和mutableCopy的详细分析
copy和mutableCopy在实际开发中常用到,同时,copy属性修饰符也是我们在定义NSString、NSArray和block等需要用到的,要较好地掌握它们,需要从原理上去分析于理解,本文侧重于分析copy和mutableCopy是如何实现的,进一步讲解使用copy和mutableCopy时应该注意的细节问题本文分成两个部分来讲解说明,第一个是copy和mutableCopy方法的使用原创 2015-09-17 21:24:42 · 3552 阅读 · 0 评论 -
iOS之模仿新浪微博项目经验总结
选择新浪微博项目进行模仿,新浪微博的数据是开放的,是一个很不错的项目,可以从中学到很多东西,伴随着项目不断地进行,我会将学到的很好的思想和方法实时更新在本文中:1、在项目中,需要大致统一导航栏左右barButtonItem的风格,那么就在每个视图控制器中中定义左右两个barButtonItem的图片,由于是统一的风格,所以几乎每次地定义,都是一样的代码。面对这样的情况,我们应该进行的操作是:自原创 2015-10-07 20:05:00 · 1892 阅读 · 0 评论 -
iOS数据处理之字典转模型
当程序中有需要用到plist文件去存储一些东西的时候,我们在程序中也需要动态地去获取到plist文件中的内容并且使用它们。在MVC设计模式中,M指的是modal,代表着程序需要的数据,所以我们需要创建一个modal类然后处理plist文件中的数据或者是其他的来源,本文主要讲处理plist文件,而这个过程也就是本文要讨论的字典转模型字典转模型可以说是有一个固定的模板,使用它很简单,但是我们应该从原创 2015-09-18 20:41:27 · 2023 阅读 · 0 评论 -
iOS之手动创建PCH文件
Xcode6之前,每个项目是会自动生成PCH文件的,PCH的全称是precompiled header,在PCH文件中导入的头文件或者是框架,都不用在具体的类中去导入了,这是PCH文件的一个优点。但是Xcode6以及现在的Xcode7是把这个文件给取消了,原因大概是为了减少编译的时间。具体的原因可以在StackOverFlow网站上看,链接为:为什么Xcode6之后取消了PCH文件的自动创建原创 2015-10-07 19:56:50 · 924 阅读 · 0 评论 -
iOS设计模式之MVC设计模式浅谈
本文之所以称为是MVC设计模式的浅谈,是因为MVC设计模式的概念并不是很复杂,但是如果要合适恰当地使用到项目中去的话,那么是需要很丰富的经验,和较为深刻的理解的。本文的另一个目的是将自己对MVC设计模式的理解记录下来,本文在以后会不断地更新。1、MVC设计模式的概念M:model,被叫做模型,本质上是APP所需要的数据,对这个model类的处理又会有很多的技巧和方法(例如对经典的plist原创 2015-09-19 09:37:47 · 614 阅读 · 0 评论 -
iOS中KVO和NSNotification简单示范
本文主要利用最简单的代码来说明KVO和NSNotification的使用方法:1、KVOKVO的全称是key value observing,解读为中文就是键值观察者模式,作用呢就是去监控对象的属性,如果属性的值发生了相应的变化,那么就做出相应的操作。下面就通过简单的例子说明:创建 Single View Application 项目,然后新建一个类,命名为Student,然后在,St原创 2015-09-21 23:26:11 · 791 阅读 · 0 评论 -
iOS之错误总结收集
本文的主要目的是记录收集在学习开发过程中遇到的错误,本文将会伴随着不断地学习过程进行实时更新:1、duplicate symbol _OBJC_METACLASS_$_ 类名 in 原因:(1)在某个文件中包含了.m文件(2)在同一个项目中存在两个以及两个以上的重复文件原创 2015-10-12 17:42:45 · 651 阅读 · 0 评论 -
iOS开发小技巧归纳
本文主要收集开发中的小技巧,文章主要的形式为列表,逐条归纳总结:1、搭建一个app的框架的时候,对于tabBarController的一个子视图控制器,经常会设置tabBarItem的title,和navigationController的title,我们往往需要进行两条代码去说明:viewController.tabBarItem.title = @"Home";navigationC原创 2015-10-04 10:42:35 · 747 阅读 · 0 评论 -
iOS中UITabBarController的剖析
本文对UITabBarController进行分析,研究苹果内部是怎么构造出这个类的,以及我们怎么去自定义一个类原创 2015-10-14 21:28:31 · 1397 阅读 · 0 评论 -
iOS之Cocoa大招KVC键值编码
在iOS编程中,KVC(Key Value Coding)键值编码被称为Cocoa框架的大招,这是有一定道理的,KVC是底层的操作,它可以做到很多难以实现的操作,同时也可以使得代码变得很简单。本文通过对KVC的各种不同功能来进行说明:新建一个Command Line Tool项目1、KVC可以改变那些私有的属性:新建一个继承于NSObject的类Person,在.m文件中添加一个属性n原创 2015-10-15 22:34:01 · 816 阅读 · 0 评论 -
iOS的开发中的错误解决方案
在iOS的学习和开发中,经常会遇到一些bug需要调试很久,查找很多资料才能解决,本文就针对这类问题进行归纳和总结,一方面是记录自己的开发历程中所遇到的问题,另一方面希望大家在遇到这个问题的时候能通过本文的解决方法进行debug,快速调试( 本文将会持续地不定时地更新)原创 2016-05-07 14:56:35 · 671 阅读 · 0 评论 -
iOS之浅谈视图控制器的生命周期
这段时间研究了一下视图控制器的生命周期,在网上找了很多的资料,顺着大家的详细描述和说明,我也做了相应的实验去验证,其中包括一些扩展的内容研究。所以想写一篇文章来记录下研究的心得,但是还是感觉没有理解很透彻,所以这也是标题中使用“浅谈”的目的,这篇文章会随着以后的不断学习和理解进行更新。下面就开始正题:虽然我在学习的过程中做了很多实验,不过我会以一种总结的格式来书写本文的板书,这也利于以后的原创 2015-09-21 21:36:25 · 1050 阅读 · 0 评论 -
iOS开发之导出ipa文件以及查看内容
在iOS系统中,IPA文件指的是iphone Application,IPA文件实质上是一个zip压缩包,我们在iOS系统上使用的软件,最初下载的都是IPA文件。打个比方,它就像windows系统中下载的“绿色软件”,解压后直接使用而无需安装,卸载的时候也只需要删除掉文件即可。安装软件到iOS系统上进行的操作是:将IPA文件解压,解压后的内容放在由一串随机码构成的目录下,这就是开发所涉及到的沙盒。原创 2015-10-04 10:46:37 · 14347 阅读 · 0 评论 -
iOS百度地图SDK之实时绘制轨迹(后台仍执行)
首先,对于百度地图SDK的配置和环境搭建就不做说明,需要的人可以到这里查看 http://blog.csdn.net/nineteen_/article/details/47617167 ,本文的重点在于实现实时绘制轨迹的功能,并且对细节进行处理和优化原创 2015-08-14 11:15:25 · 11841 阅读 · 4 评论 -
iOS中一个APP的启动过程
我们在iOS开发中,往往是习惯性地去创建一个模板进行代码的书写,例如我们很熟悉的Single View Application模板,在这些模板创建好了之后通常会有大家很熟悉的几个文件已经被创建好,例如AppDelegate、main函数。info.plist等这些文件。相信很多开发者对于怎么去使用这些文件十分熟悉,于此同时,这些文件在一个iOS中的APP启动中有很大重要的,本文就从很容易被开发者忽原创 2015-08-26 16:51:47 · 1050 阅读 · 0 评论 -
iOS短信验证SMSSDK的使用
对于在测试阶段的APP,大多数都选择使用mob.com移动开发者服务平台的SMSSDK,这套框架很实用,可以较为快速和稳定地将短信验证功能实现到项目工程中 第一步 下载SMSSDK地址为 http://mob.com/#/download 第二步 导入SDK将解压出来的SMS_SDK直接拖入到工程中(注意勾选Copy items if needed)第三步 添加原创 2015-08-14 15:54:27 · 4086 阅读 · 0 评论 -
iOS百度地图SDK基本配置和使用
介绍:在iOS的开发中,有些应用需要实现与地图相关功能,这时候可以选择使用苹果自带的框架进行实现,也可以选择使用百度所提供的这个第三方SDK进行功能的实现,下面将对百度地图的SDK的基本使用进行说明:一、下载百度地图SDK首先,开发者需要到百度地图IOS SDK下载界面去下载百度所提供的第三方框架,下载地址为:http://developer.baidu.com/map/index原创 2015-08-13 19:20:26 · 2980 阅读 · 0 评论 -
iOS百度地图SDK常见问题以及解决方案
很多第一次使用百度地图的开发者都常常遇到很多的小问题,而这些问题往往浪费了很多时间,为了让大家不把时间浪费在非技术问题上,我将自己使用百度地图SDK的过程和在网上收集到的大量资料做了整理和归纳,希望能给大家带来帮助原创 2015-08-13 19:50:00 · 3315 阅读 · 0 评论 -
iOS出现键盘的同时视图向上移动的方法讲解
本文主要说明如何实现在键盘出现的时候整个视图也跟着向上移动(主要是解决键盘会遮挡textField的现象),在键盘消失的时候视图恢复到原来的位子首先分别说明下 UITextFieldDelegate 中的代理方法的用处这里是摘录自文档中的信息- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField; // r原创 2015-08-20 19:21:25 · 4511 阅读 · 0 评论 -
iOS中3种基础的数据持久化模式
本文主要对NSUserDefaults、plist(属性列表 property list)、archive(归档)这三种基础的数据持久化进行研究在讨论这三种具体的方法之前,需要了解下iOS中的“沙盒”,也就是数据存储的地方,在iOS中,每个应用的沙盒都是独立的,在没有允许的情况下,不同的应用之间是不能进行信息的交互的。每个应用的“沙盒”这样一些目录:1、Documents:这个目录用于存储原创 2015-09-22 09:56:42 · 473 阅读 · 0 评论 -
iOS视图控制器的跳转方法
视图的跳转有很多的方式,本文主要将其分为普通的viewController和导航控制器navigationController两种来进行详细说明原创 2015-08-18 20:10:54 · 6683 阅读 · 0 评论 -
iOS中property和synthesize的详细说明
我们要在一个类中定义属性,首先是要在.h文件中(或者说是在.m文件中的@interface的作用域中)使用关键字property来进行属性的声明,同时,在xcode的4.5版本以前,如果我们想要直接用属性名前面加上下划线构成的变量来进行操作的话(注意这里说的是构成的变量,而不是属性,也就是说,我们在4.5以后的版本中使用的那种带下划线的名字是个变量,不是我们定义的属性本身)需要在.m文件中写上@s原创 2015-09-12 13:00:35 · 797 阅读 · 0 评论 -
iOS中的堆和栈
对于iOS这种移动端的开发,程序员应该合理地管理内存,这样才能让应用更加灵活流畅地运行。在Andriod中,是由垃圾回收机制来处理在堆中的内存空间,而在iOS中,需要程序员手动操作在堆中间的内存空间,并进行内存的分配和释放(ARC之后换做应用帮助程序员进行大部分操作)我们先来看看iOS中一共有哪些存储空间:1、栈区(stack)2、堆区(heap)3、静态区4、寄存器区5、原创 2015-09-28 11:25:14 · 1930 阅读 · 0 评论 -
iOS属性修饰符
当我们使用property来定义属性的时候,往往会为属性添加很多的修饰符,例如:nonatomic、assign、copy、strong、weak等等,本文将讨论这些属性修饰符的作用。1、atomic这个英文单词直译过来的话,是“原子的”的意思,那么在iOS中,“原子”代表着处理事件的一个完整操作,我们利用atomic这个关键字来定义属性,那么这个属性的setter和getter方法将具有原创 2015-09-13 11:16:15 · 893 阅读 · 0 评论 -
iOS详细解析视图控制器的正向和逆向传值
本文主要介绍在不同的视图控制器之间进行传值,分为两种传值方式,正向传值比较容易,逆向传值相对于正向来说麻烦一点,需要使用代理或者是block原创 2015-08-18 16:52:22 · 1859 阅读 · 0 评论 -
iOS面试题积累和总结
本文针对于面试题进行收集和梳理,之所以这样做的原因有二:最基本的是为了工作而做的准备,另外,这些题目之所以能成为iOS面试官在众多题中抽取出来作为察看应试者是否对iOS开发有较为良好的理解,是因为这些题目一般都具有代表性,或者是一些大家容易忽略的细节,又或是非常重要的知识点。所以,本文将从收集到的面试题进行入手,来巩固自己的iOS知识,同时提高iOS编程能力。原创 2016-05-11 20:26:06 · 678 阅读 · 0 评论