iOS开发进阶杂文
文章平均质量分 75
diveinedu
这个作者很懒,什么都没留下…
展开
-
Objective-C单例模式
长沙戴维营教育(www.diveinedu.cn)是湖南唯一一家具有iOS开发培训实力的实训机构!单例类是一种特殊的类,在一个进程种只会存在一个该类的对象,在iOS应用中只会出现一个对象。这种设计模式在系统框架中许多地方都使用了,如NSFileManager、UIApplication等。在ARC的环境下,接口文件为://// DVISingleton.h原创 2014-05-31 12:48:17 · 674 阅读 · 0 评论 -
Mac os x 10.10上使用quicktime录制iphone屏幕
在上课或者出去宣讲的时候,经常需要在投影仪上演示APP,甚至需要将屏幕录制下来(貌似游戏演示更需要这功能)。以前一直在寻找各种办法,其中使用最多的就是通过在Mac上安装一个AirPlay服务器软件,然后使用iOS的AirPlay功能将屏幕投影到电脑上。但是由于苹果没有直接在Mac上提供这样的能力,因此只能去下载AirServer之类的软件。它们一般都不便宜,并且稳定性也不是太好。不过从Mac OS原创 2015-04-04 20:53:19 · 2189 阅读 · 0 评论 -
使用xcode的preprocess功能学习宏定义
C、C++和Objective-C都支持宏定义。宏在编译预处理过程中会进行代码替换。我们可以通过命令行非常容易就能的到一个源文件处理后的结果。#define kMax 100int main(int argc, char * argv[]) { int a = 100; if (a kMax) { a++; } else {原创 2015-04-19 14:55:52 · 3635 阅读 · 0 评论 -
Objective C设计模式之外观模式facade
一个框架中如果包含的类比较多,或者功能比较复杂的情况下,可以通过一个较辅助类为一些常用的情况提供简单的接口。这样客户在使用这个框架的时候既可以比较简单的应付常见的场景,又可以使用框架中的内实现符合自己要求的功能。这就好比买电脑的时候,即可以买品牌机,又可以自己买配件组装。下面就拿买电脑来举例。假设电脑由显示器、主板、CPU、内存和显卡组成。当然,实际远远不止这些。每个设备都有许多的参数需要原创 2015-04-19 14:57:02 · 786 阅读 · 0 评论 -
Tvos模拟器遥控的快捷键
戴维营教育原创文章,转载请注明出处。我们的梦想是做最好的iOS开发培训!tvOS的模拟器需要通过遥控器模拟器才能操作,而不能直接在屏幕上点击,这与iOS和Mac是完全不一样的交互方式。虽然说物理的遥控挺好用的,但是模拟的遥控器却真是很难用,很多地方都需要按住Option键。其实苹果公司还提供了一些快捷键可以直接通过键盘进行操作。当然,并不是所有的操作都有对应的快捷键的,大家如果发现下面所没原创 2015-11-25 09:54:00 · 660 阅读 · 0 评论 -
Tvos多层图片的使用
戴维营教育原创文章,转载请注明出处。我们的梦想是做最好的iOS开发培训!Apple TV中的按钮或者Cell在获取焦点后,可以有一些有意思的阴影动态效果。这个效果可以通过视差图片很容易就实现。Apple TV人机交互指南中说明tvOS中的UIImage支持两种专有的层叠图片格式LSR和LCR。其中LSR主要用于直接放入项目资源中,而LCR则主要放在服务器上,在运行的时候在按需加载。原创 2015-11-25 09:43:25 · 673 阅读 · 0 评论 -
Ios高级绘图之路径剪切和蒙版
http://io.diveinedu.com/ http://io.diveinedu.com/原创 2015-11-27 15:21:31 · 1985 阅读 · 0 评论 -
Unity3d的ios插件开发
http://io.diveinedu.com/ http://io.diveinedu.com/原创 2015-11-27 16:10:10 · 951 阅读 · 0 评论 -
Ios应用网络安全之https
戴维营教育原创文章,转载请注明出处。我们的梦想是做最好的iOS开发培训!iOS应用网络安全之HTTPS1. HTTPS/SSL的基本原理安全套接字层 (Secure Socket Layer, SSL) 是用来实现互联网安全通信的最普遍的标准。Web 应用程序使用 HTTPS(基于 SSL 的 HTTP),HTTPS 使用数字证书来确保在服务器和客户端之间进行安全、加密的通原创 2016-01-18 15:12:15 · 1136 阅读 · 0 评论 -
Protobuf在ios上的使用
Protobuf在ios上的使用戴维营教育原创文章,转载请注明出处。我们的梦想是做最好的iOS开发培训!介绍在不同平台通信的时候,首先需要将对象进行序列化。iOS平台上我们常用NSKeyedArchiver进行归档,当然也可以将数据处理为JSON或者XML格式。NSKeyedArchiver只能在iOS/Mac平台使用,因此它归档的二进制数据不适合于在不同平台之间使用。JSON和XML虽然由于容易维原创 2015-12-07 10:36:08 · 3349 阅读 · 0 评论 -
Linux平台swift语言开发学习环境搭建
戴维营教育原创文章,转载请注明出处。我们的梦想是做最好的iOS开发培训!摘要 介绍在Ubuntu平台搭建Swift开发环境; 介绍Swift脚本解析器swift的使用; 介绍Swift编译器swiftc的使用;1.序言这两天一直忙,没来得及记录东西,周三12月4日凌晨1点多看到苹果正式开源了Swift,国外各大媒体资讯动作超级快。我也兴奋的起来看了一遍关于Swift开源的最新消息。众所周知,苹果平原创 2015-12-08 09:51:45 · 889 阅读 · 0 评论 -
陪你云sdk用户指南
戴维营教育原创文章,转载请注明出处。我们的梦想是做最好的iOS开发培训!“陪你云SDK”是戴维营教育“陪你云”社交APP的视频聊天部分,为了方便大家学习,特意整理出来。下载地址:https://github.com/Diveinedu-CN/PeiniYunSDK1. 添加“陪你云SDK”直接将“PeiniYunSDK”拉入项目2. 添加必要的framewo原创 2015-12-07 11:41:53 · 627 阅读 · 0 评论 -
Objective-C单例模式
单例类是一种特殊的类,在一个进程种只会存在一个该类的对象,在iOS应用中只会出现一个对象。这种设计模式在系统框架中许多地方都使用了,如NSFileManager、UIApplication等。在ARC的环境下,接口文件为://// DVISingleton.h//// Copyright (c) 2014 长沙戴维营教育. All rights reserved.原创 2015-03-13 15:56:00 · 580 阅读 · 0 评论 -
Objective-C代码规范(简章)
Objective-C编程规范格式化缩进行缩进使用4个空格,不要使用Tab字符。在定义变量、变量赋值等一些操作时,如果同时操作的数据较多时,建议采用Tab键排版,使写出来的代码更整洁方法声明和定义留一个空格在 – 或 + 和返回类型之间,但参数列表里的参数之间不要留间隔。如果参数过多,推荐每个参数各占一行。使用多行的情况下,以参数前的冒号用于原创 2015-03-13 15:54:26 · 969 阅读 · 0 评论 -
objc系列译文(7.3):KVC 和 KVO
Key-value coding (KVC) 和 key-value observing (KVO) 是两种能让我们驾驭 Objective-C 动态特性并简化代码的机制。在这篇文章里,我们将接触一些如何利用这些特性的例子。观察 model 对象的变化在 Cocoa 的模型-视图-控制器 (Model-view-controller)架构里,控制器负责让视图和模型同步。这一共有两步转载 2015-03-10 11:53:14 · 600 阅读 · 0 评论 -
Webrtc服务器搭建
iOS WebRTC服务器 STUN TURN ICE Server AppRTC原创 2015-03-06 15:21:01 · 11723 阅读 · 8 评论 -
Macosx Setdns
通过C语言接口在Mac App内部对系统的DNS配置进行修改。Mac OS X设置DNS代码示例代码setDNS.c内容如下:#include static bool setDNS(CFStringRef *resolvers, CFIndex resolvers_count){ SCDynamicStoreRef ds = SCDynamicStoreCre原创 2015-03-27 11:57:47 · 731 阅读 · 0 评论 -
Webrtc的ios框架编译
WebRTC 视频聊天 开源框架 iOS XMPP原创 2015-03-06 15:11:05 · 2015 阅读 · 0 评论 -
使用pushmebaby测试app的远程推送功能
iOS CocoaPods 依赖管理工具原创 2015-03-06 15:36:35 · 1047 阅读 · 0 评论 -
Git Cheat Sheet Chinese
----------------戴维营教育整理--------------------索引创建本地修改搜索提交历史分支与标签更新与发布合并与重置撤销创建复制一个已创建的仓库:$ git clone ssh://user@domain.com/repo.git创建一个新的本地仓库:$ git init本地修改翻译 2015-03-06 15:37:28 · 692 阅读 · 0 评论 -
C++教程之lambda表达式一
什么是Lambda?C++ 11加入了一个非常重要的特性——Lambda表达式。营里(戴维营)的兄弟都对Objective-C很熟悉,许多人多block情有独钟,将各种回调函数、代理通通都用它来实现。甚至有人选择用FBKVOController、BlocksKit等开源框架将KVO、控件事件处理都改为通过block解决。原因就是简单、方便、直观,函数的定义和使用出现在同一个地方。这里的La原创 2015-03-06 15:40:19 · 1090 阅读 · 0 评论 -
Macosx Setdns
通过C语言接口在Mac App内部对系统的DNS配置进行修改。Mac OS X设置DNS代码示例代码setDNS.c内容如下:#include static bool setDNS(CFStringRef *resolvers, CFIndex resolvers_count){ SCDynamicStoreRef ds = SCDynamicStoreCre原创 2015-03-20 09:01:36 · 795 阅读 · 0 评论 -
为mac自带的emacs添加ruby模式
Mac自带的Emacs还是v22,实在是有点老,连现在流行的Package Manager都没有。由于它没有自带的Ruby mode,因此也不会为Ruby提供语法高亮了。不过如果是熟悉Emacs和elisp的大神,自己写个插件也不错。但是对于我这种玩票性质的小白用户来说,实在是太难了。不过幸亏这是一个广为人知的问题,Google上有许多答案。其中Diamond的这篇操作比较简单。下面是它的中文版。翻译 2015-03-20 09:04:46 · 1259 阅读 · 0 评论 -
Coredata第三课 数据查询
问题小明班上最近月考了,老师大明想要给一部分优秀的同学进行奖励,而另外一部分要进行查漏补缺。大明决定将总分排名前10的,各科成绩排名前10的以及排名最后10名的按从高到低的顺序找出来。以前大明都是在家用笔一个个划出来。不过最近大明在长沙戴维营教育接受了残酷的iOS培训,决定装逼一把,给自己的“肾6+”开发了一款应用。只要各科老师将成绩提交给他,就可以直接看到这些学生的成绩了,并且各种曲线、原创 2015-03-09 16:50:19 · 936 阅读 · 0 评论 -
Coredata第二课 实体间的关系
问题如果多个实体之间有关联,比如Student拥有多本书(Book),怎么像数据库一样的能够表示这种关系?解决方法Core Data提供了relationship来表示实体(Entity)之间的这种关系,包括一对一、一对多等。1 .打开Core Data的模型文件,可以看到每个Entity都有一个Relationships可以设置。我们在Student里面添加一个b原创 2015-03-09 16:48:54 · 976 阅读 · 0 评论 -
Coredata第一课 认识coredata
问题在iOS/Mac中我们有许多方式去持久化存储数据:NSUserDefault、Key chain、C语言文件接口、NSFileHandle、基础框架中的write方法、归档等等。在实际应用中,我们经常需要将这些数据按一定格式转换为对象,并且进行一定的筛选等操作然后再使用,显得不是很方便。Apple给我们提供了Core Data框架,可以直接按对象的方式操作数据,让这些变得非常简单。原创 2015-03-09 16:47:31 · 633 阅读 · 0 评论 -
Afnetworking+nginx+https服务器通信
戴维营教育原创文章,转载请注明出处。我们的梦想是做最好的iOS开发培训!摘要1.介绍iOS平台用AFNetworking与HTTPS后台接口进行安全通信。 2.介绍后台自签名证书制作步骤。 3.以及Linux平台Nginx配置HTTPS协议接口的Web站点。这个关于AFNetworking的HTTPS安全通信的问题,很多没有过第一次经验的以及甚至有过一次经验的都会有点不确定原创 2015-12-08 09:54:27 · 657 阅读 · 0 评论