- 博客(18)
- 收藏
- 关注
转载 CoreText
一、动态下载苹果提供的多种中文字体为了达到更好的字体效果,有些应用在自己的应用资源包中加入了字体文件。但自己打包字体文件比较麻烦,原因在于:1、字体文件通常比较大,10M - 20M是一个常见的字体库的大小。大部分的非游戏的app体积都集中在10M以内,因为字体文件的加入而造成应用体积翻倍让人感觉有些不值。如果只是很少量的按钮字体需要设置,可以用一些工具把使用到的汉字字体编码从字体
2014-11-17 09:33:29 475
原创 PhoneGap配置
打开终端,进入PhoneGap解压目录下的lib/ios/bin目录,运行create命令,如下:$ ./create 项目目录 com.company.app AppProjectName其中,三个参数分别为:新的Xcode项目目录包名,遵循reverse domain命名规范,比如com.company.appname项目名称1. cd
2014-11-17 09:32:06 400
原创 PhoneGap集成
1.安装phoneGapsudo npm install -g phonegap2.创建app框架 cd /Users/shuly/Desktop/Test phonegap create my-app3.创建iOS分支 cd /Users/shuly/Desktop/Test/my-app/pla
2014-11-17 09:31:04 726
转载 王垠:如何掌握程序语言
学习程序语言是每个程序员的必经之路。可是这个世界上有太多的程序语言,每一种都号称具有最新的“特性”。所以程序员的苦恼就在于总是需要学习各种稀奇古怪的语言,而且必须紧跟“潮流”,否则就怕被时代所淘汰。 作为一个程序语言的研究者,我深深的知道这种心理产生的根源。程序语言里面其实有着非常简单,永恒不变的原理。看到了它们,就可以在很短的时间之内就能学会并且开始使用任何新的语言,而不是花费很多功夫
2014-11-17 09:30:03 475
原创 iOS8新特性
1. App Extension Programming Guide2.LocalAuthentication.framework - Touch ID Authentication3.Local Authentication Framework Reference.4.Photos.framework/PhotosUI.framework5.AV Foun
2014-11-17 09:28:59 904 1
转载 MVVM学习
普通的MVC架构Model 呈现数据,View 呈现用户界面,而 View Controller 调节它两者之间的交互。造成iOS 应用中日益增长的重量级视图控制器的问题,许多逻辑被放在 View Controller 里。它们中的一些确实属于 View Controller,但更多的是所谓的“表示逻辑(presentation logic)”,以 MVVM 属术语来说,就
2014-11-17 09:26:57 704
原创 Mac OX 10.10 cocoapods升级步骤
Uninstall cocoapods$ sudo gem uninstall cocoapodsUninstall xcodeproj $ sudo gem uninstall xcodeprojInstall xcodeproj$ sudo gem install xcodeprojInstall cocoapods$ sudo gem install cocoap
2014-11-17 09:24:02 832
转载 C++关于内联函数的一些思考
(1)什么是内联函数? 内联函数是指那些定义在类体内的成员函数,即该函数的函数体放在类体内。(2)为什么要引入内联函数? 当然,引入内联函数的主要目的是:解决程序中函数调用的效率问题。内联函数具有一般函数的特性,它与一般函数所不同之处只在于函数调用的处理:一般函数进行调用时,要将程序执行权转到被调用函数中,然后再返回到调用它的函数中;而内联函数在调用时,是将调用表达式用内联函数体来替换
2013-11-12 11:42:52 620
转载 旧工程适配iOS 6和iPhone 5之第三方静态库(file is universal (3 slices) but does not contain a(n) armv7s )
升级了xcode之后,支持iOS6和iPhone5,不过Build项目的时候,出现了标题所示错误提示信息。原因是引用的第三方库导致了这个链接错误。解决办法有三个,随便哪种都能解决: 1.升级涉及到的.a文件 2.在target的Build Settings里面,将Build Active Architecture Only改成YES 3.在target的Build Setting
2013-07-05 09:58:36 625
原创 iOS动态监听网络变化
首先需要导入Reachability.h ...m 2个文件,然后在init注册监听#import "Reachability.h" //注册网络状态改变通知 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reachabilityChanged:) name:kReachabili
2013-07-04 17:19:47 3060
原创 iOS压缩和解压
iOS中,有时候我们需要从服务器下载资源文件,有2种方式,有时是单个文件传输,有时服务器会将多个文件压缩后进行传输。当资源文件较多时,压缩成zip格式,通过验证文件的MD5值判断文件是否成功下载是一种不错的方式,这里讲一下客户端如何处理zip文件和压缩文件为zip包我们项目使用的是第三方开源库SSZipArchive,首先在githHub 下载源码,导入项目,使用起来很简单,在需要用的地方
2013-07-04 11:16:29 1377
原创 iOS类扩展-添加变量
iOS类范畴可以为我们不知道源码或已有的类添加方法,但是无法为类添加实例变量,为了实现添加变量的目的,我们使用关联引用为分类添加数据,如下我们有个person类,但是我们没有它的源码,只有.h文件如下:#import @interface Person : NSObject@property(nonatomic,strong)NSString *name;@end我们需要为它
2013-07-03 17:21:25 1906
原创 使用分类向某个现有类添加方法(类扩展,范畴)
iOS中有时候我们需要向现有的类中添加一些方法,使用分类(Category)可以在运行时向某个现有类添加新的方法,这在我们向系统类或者我们不知道源码的类添加我们需要的方法时,非常的方便。不过分类有个缺点,无法添加新的变量,解决方法见下篇。写个Demo,代码如下:#import @interface UIImage (fixOrientation)- (UIImage *)fixOrie
2013-07-03 17:01:48 725
转载 十个iOS面试问题
不管对于招聘和应聘来说,面试都是很重要的一个环节,特别对于开发者来说,面试中的技术问题环节不仅是企业对应聘者技能和积累的考察,也是一个开发者自我检验的好机会。对于iOS和Mac开发来说,因为本事还算比较新,企业对于这方面的开发者需求也比较大,所以面试时的要求可能并不是很高,一般能知道一些Cocoa和OC的基本知识也就认为可以了。但是对于一个希望拥有技术力基础的企业的iOS或者Mac开发来说,两到三
2013-07-03 09:42:42 454
原创 iOS获取用户位置(续)
前面尝试了mapkit+google,百度地图api 2种方式实现用户定位,最后一种使用的是CLLocation获取火星坐标让后修正的方案,因为修正是本地,这是目前最适合我们应用的方式之一。这种做法的优势是只要定位打开并允许应用获取你的位置,就能及时获取你的经纬度(google坐标),代码如下: locManager = [[CLLocationManager alloc] init];
2013-07-03 09:26:15 800 1
原创 iOS获取用户位置
简介:本文是基于项目需要,分别采用的3种获取用户位置的方法,各有优略,自行斟酌。第一种,使用mapkit获取用户经纬度,使用google解析经纬度获取地址,代码如下:#import "LocationHelper.h"#import #import "JSONKit.h"#import "ASIFormDataRequest.h"@interface LocationHelpe
2013-07-02 15:25:17 1563
原创 iOS无限后台测试
最近项目需要用到无限后台,研究了段,网上提供很多的解决方案,逐一试了,很多都不实用了,更新一篇,讲下我们实现无限后台的2种方式。(备注:企业证书发布不上App商店),话不多说,直接代码:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launch
2013-07-02 14:48:03 1459
原创 iOS GCD技术初学
GCD提供很多超越传统多线程编程的优势: 易用: GCD比之thread跟简单易用。由于GCD基于work unit而非像thread那样基于运算,所以GCD可以控制诸如等待任务结束、监视文件描述符、周期执行代码以及工作挂起等任务。基于block的血统导致它能极为简单得在不同代码作用域之间传递上下文。 效率: GCD被实现得如此轻量和优雅,使得它在很多地方比之专门创建消耗资源的线程更实用且
2013-07-02 14:08:20 901
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人