- 博客(32)
- 问答 (1)
- 收藏
- 关注
原创 iOS:Xcode 6以后如何创建预编译文件(pch)
pch文件介绍在Xcode6之后,大家会发现创建工程时自建的名为“工程名-Prefix.pch”的预编译文件消失了,这是为什么? 原因是:因为把大量的头文件和宏定义等放到pch文件里面,导致编译时间过长。苹果为了加快编译时间增加用户体验,所以默认不创建pch头文件。预编译文件的作用: 用来包含整个项目中都用得上的头文件 存放一些全局的宏(整个项目中都用得上的宏) 能自动打开或者关
2015-10-13 12:40:32 1088
原创 iOS 用CocoaPods做iOS程序的依赖管理(基于Alcatraz)
本文仅限于用Alcatraz安装CocoaPods插件后,按照下列方式引入第三方类库。 更多内容详见: 用CocoaPods做iOS程序的依赖管理。创建Podfile文件1.点击红框,2.接着弹出Podfile文件3.Edite Profile,下面以添加融云SDK为例,添加如下内容来引用 :Profile文件内容:Install Pods1.点击Install Pods2.会看到Xcode输出信
2015-09-30 09:31:09 629
转载 用CocoaPods做iOS程序的依赖管理
转自:唐巧—用CocoaPods做iOS程序的依赖管理CocoaPods 简介每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs 的 npm。随着 iOS 开发者的增多,业界也出现了为 iOS 程序提供依赖管理的工具,它的名字叫做:CocoaPods。CocoaPods 项目的源码 在 Github 上管理。该项目开始于 2011 年 8 月 12
2015-09-30 09:26:08 868
原创 CocoaPods:删除已经配置的类库和移除CocoaPods
引言我们使用CocoaPods非常高效地将一些第三方类库导入到我们的项目中,但是不由得产生一个疑问:如果发现某个类库不适用,甚至是整个CocoaPods我们都不想再在项目中持有,那么我们要怎么把这些东西从项目中清理出去呢?本文介绍的就是如何删除一个或若干个已经在项目中配置好的第三方类库,以及如何将整个CocoaPods从项目中移除(不是在终端中卸载)。删除项目中已经配置的类库1.在已经配好的Coco
2015-09-23 16:41:23 1071
转载 iOS消息推送机制的实现
转自:iOS消息推送机制的实现iOS消息推送的工作机制可以简单的用下图来概括:Provider是指某个iPhone软件的Push服务器,APNS是Apple Push Notification Service的缩写,是苹果的服务器。上图可以分为三个阶段: 第一阶段:应用程序把要发送的消息、目的iPhone的标识打包,发给APNS。 第二阶段:APNS在自身的已注册Push服务的iPhone列表
2015-09-23 10:59:24 448
转载 Xcode插件管理工具Alcatraz
来自:使用Alcatraz来管理Xcode插件简介Alcatraz 是一个帮你管理 Xcode 插件、模版以及颜色配置的工具。通过Alcatraz来使用插件是一件非常方面的事情,我们无需再去Github上面费劲的搜索这方面的资源,因为Alcatraz已经囊括了大部分开源出来的插件。安装和删除使用终端输入如下的命令行来安装 Alcatraz:mkdir -p ~/Library/Application
2015-09-22 16:25:20 8349
转载 iOS 导航栏颜色渐变与常用属性
导航栏背景色设置:self.navigationController.navigationBar.barTintColor = [UIColor greenColor];导航栏标题颜色字体大小 NSMutableDictionary *attrs = [NSMutableDictionary dictionary]; attrs[NSForegroundColorAttributeName]
2015-10-24 17:09:39 822
转载 Swift 类构造器的使用
这几天在使用 Swift 重写原来的一个运动社交应用 SportJoin.为什么要重写呢? 首先因为实在找不到设计师给我作图; 其次, 原来写的代码太烂了我也闲不下来, 想找一些项目做, 所以只好将原来的代码重写了.原来的代码大约是一年半以前写的, 我现在真的不想吐槽当时写的代码有多烂, 有一句话怎么说来着: 程序员连自己写的源代码都不想读, 怎么可能看别人写的源代码! 每半年获得的知识相当于之
2015-10-09 11:21:52 530
转载 Swift 2.0实战:如何实现从非零下标遍历数组?
如何让 for 循环从下标 i(比如 5)开始,而不是从 0 开始。Swift 2.0 提供了一种像 C 语言那样的循环,代码如下:for var index = 5; index < array.count; index++ { // do something with array[index] } 也可以用区间运算符的方式实现相似的功能:for index in 5..<array
2015-09-29 08:50:42 657
转载 Swift开发必备技巧:static和class的使用
Swift中表示 “类型范围作用域” 这一概念有两个不同的关键字,它们分别是static和class。这两个关键字确实都表达了这个意思,但是在其他一些语言,包括Objective-C中,我们并不会特别地区分类变量/类方法和静态变量/静态函数。但是在Swift中,这两个关键字却是不能用混的。在非class的类型上下文中,我们统一使用static来描述类型作用域。这包括在enum和struct中表述类型
2015-09-28 16:09:25 417
原创 Swift 成员变量的get/set
import UIKitclass Question: NSObject { var answer: String! var icon: String! var title: String! var options: [String]! // 自定义 get、set var image: UIImage { get {
2015-09-28 15:04:31 1973
转载 Swift String Extension
import Cocoaextension String{ //分割字符 func split(s:String)->String[]{ if s.isEmpty{ var x=String[]() for y in self{ x.append(String(y))
2015-09-25 16:49:18 787
转载 Swift多种实现单例写法
学习Swift的单例写法,以下提供了5种方式,一起来看看吧!1、非线程安全的类属性嵌套方式class JackyBlog { // 类属性使用class声明,声明为只读属性 class var sharedInstance: JackyBlog { get { // 嵌套一个结构体 struct JackyBlogSingleton { s
2015-09-23 14:35:08 848
原创 Swift单例写法(推荐)
写法优点: 实现方式与系统的单例一致; 支持任意版本的; 这种写法是线程安全的。 import UIKitclass TimeCountdown: NSObject { class func shareInstance() -> TimeCountdown { struct singleton { static var predi
2015-09-23 14:28:45 549
转载 Swift trim space/new line(字符串过滤空格和换行符)
Swift字符串过滤空格和换行符,写法与原来的objective-c有点不同,因为Swift中的字符串的索引不是int类型,而是Index类型。/// UIView's useful extensions.////// Author: huangyibiao/// Github: http://github.com/CoderJackyHuang//// Blog: http://www
2015-09-22 15:00:04 5739
转载 iOS WKWebView
iOS 与 web 之间的关系非常复杂,这种复杂关系甚至可以追溯到几十年前系统建立初期。其实现在很难说清第一代 iPhone 横空出世是一件多么困难的事情。我们现今司空见惯的触摸屏在当时只是诸多方案中的一种。最早期的产品原型是物理键盘、触摸屏、触控笔的结合,屏幕尺寸才是 5” x 7”。甚至当时 iPod 的轮子都是一个严肃的备选方案。但最最重要的决定或许都是由软件而非硬件决定的。iPhone 应该
2015-09-21 15:24:48 666
转载 iOS NSSortDescriptor
排序:它是CS(计算机科学)入门课程考试和初级编程面试白板考题的主流考题。不管怎么样,你上一次真正需要知道如何实现快速排序是什么时侯?当制作应用时,你只需要假设排序是快速的,而它的功用的衡量标准是你完成所需要任务的容易程度。从这个角度考虑,Foundation的NSSortDescriptor大概是你能找到的最有用,最优雅的实现了。NSSortDescriptor由下述参数组成 :键:对于一个给定的
2015-09-21 14:45:02 936
转载 Swift 关键词guard(监视)
如果您和我一样,让代码尽早跳出以便更好地进行逻辑、数据内容的确认,虽然 Swift 自发布的第一天起就让代码提早跳出变得可能,但是它仍然还有一些需要注意的地方。首先,您需要检查不需要的条件(比如说变量为空),而不是检查您需要的条件。更重要的是,绝大多数情况下,当变量为空的时候,您往往想要让代码跳出,然后如果变量不为空的时候就继续运行,但是接下来如果您想要在剩余的代码中使用此变量的话,就需要对变量进行
2015-09-19 09:54:01 421
转载 ios9 应用传输安全:ATS
苹果在 iOS 9 中引入了应用传输安全功能,它默认需要所有的应用使用 HTTPS 协议。由于不是所有的服务都由 HTTPS 提供,因此苹果还提供了一个禁用 ATS 的方式,既可选择性的使用也可全局应用。如果您的应用需要能够加载所有的 URL(比如说在 UIWebview中),那么您可能需要通过设置NSAllowsArbitraryLoads 键值为 YES 来全局禁用 ATS。这完全是可以的,但是
2015-09-19 09:28:30 710
原创 Swift短信分享
功能:用于短信分享内容 //MARK: 短信 // 调用方法 func sendMessage() { if (self.canSendText()) { self.presentViewController(self.configuredMessageComposeViewController(), animated: true, com
2015-09-14 16:16:42 771
原创 Swift 分享多媒体消息到 微信/新浪微博/QQ
功能介绍: 自己简单写的分享工具类,主要用于向 微信、微博、QQ 分享多媒体消息(多媒体消息也是项目中最常用的一种分享内容)。 考虑到在项目可能会有多个地方调用,因此对该类代码进行了简单的整合,方便调用。 在此分享到微博希望对大家有所帮助。配图: 微信、新浪微博、QQ的官方SDK需要大家自己手动导入,导入方法及配置详见官方文档!代码:(短信功能没有写入)class ShareTool: NSO
2015-09-14 15:53:52 2043
原创 Swift之dispatch_source实现多线程定时关闭功能
由于在项目中需要用到定时关闭功能音频功能, 本来打算用NSTimer的,可是写起来并不是那么精简好用,所以又在网上找到相关的实例,结合自己项目需要,就写出了如下代码,还请大家指教,废话不多说:import UIKitclass TimeCountdown: NSObject { var content: String = "未开启" //倒计时要展示的内容
2015-07-14 20:32:47 1392
转载 Http请求终结者:ASIHTTPRequest
转自:http://wiki.magiche.net/pages/viewpage.action?pageId=2064410ASIHTTPRequest是一款极其强劲的HTTP访问开源项目。让简单的API完成复杂的功能, 如: 异步请求,队列请求,GZIP压缩,缓存,断点续传,进度跟踪,上传文件,HTTP认证 在新的版本中,还加入了Objective-C闭包Block的支持,让我们的代码更加
2015-04-23 18:04:40 422
原创 iOS Switch case is in protected scope 异常解决
错误原因:超出switch的保护区域, case添加{ }后,编译错误可解决。switch(item.tag) { case 0: { } break; case 1: { } break; default: bre
2015-04-05 19:15:53 608
原创 ios7 修改ios状态栏默认字体颜色
ios7默认状态栏字体颜色为黑色,但项目中需要修改为白色,下面是修改步骤: 1.在info.plist中设置”View controller-based status bar appearance”为NO; 2.在需要修改的ViewController中得生命周期:viewDidLoad中添加如下方法:- (void)viewDidLoad { [super viewDidLoad];
2015-04-05 17:01:30 674
原创 iOS中数据解析出现中文乱码的问题
一般服务器的编码格式都是UTF8,通过网络获取的的中文数据是不会出现乱码问题的,但如果服务器的编码格式不是UTF8格式的呢? 一般都是通过转码来解决,但是直接转码是达不到效果的,例如:[text stringByAddingPercentEscapesUsingEncoding:NSStringEncodingConversionAllowLossy];可以换种方式,解析数据的时候,可以先把数据存
2015-04-05 16:51:41 1454 1
原创 ios 使用AVAudioRecorder录制音频,然后用AVAudioPlayer进行播放
iOS为我们提供了AVFoundation FrameWork,即Audio/Video基础类库,通过使用这个类库,可以在应用程序中实现录制,播放视频,音频等功能,使用起来非常方便。 下面通过代码的形式介绍AVAudioRecorder,AVAudioPlayer的基本使用。如有不足,还请大家多指点,以达到共同学习的目的! 废话不多说,直接上代码。xib展示: 1. 2. 3.
2015-04-02 13:53:03 2799
原创 ios调用系统照片库/拍照/录像
在iOS中要拍照和录制视频最简单的方法就是使用UIImagePickerController。UIImagePickerController继承于UINavigationController,我们可以用它来选取照片,还可以用来拍照和录制视频。要用UIImagePickerController来拍照或者录制视频通常可以分为如下步骤:1.创建UIImagePickerController对象。2.指定
2015-04-01 12:41:23 1438
原创 URL如何拼接
一般我们通过URL从网上请求数据,但有时URL是由可变部分和不可变部分拼接而成的,因为要请求不同的接口获取所需的数据。通常URL = http://(固定部分)xxx/xxx?(可变部分)xxx=xxx&xxx=xxx&xxx=xxx例如: http://121.40.188.108:8888/api?UsersInfo=GetUserInfo&UserName=admin&Password=12
2015-03-06 17:39:32 2561
原创 ios_NSUserDefaults基本使用
NSUserDefaults适合存储轻量级的本地数据存储,比如保存登陆界面的用户名、密码之类的数据,并使之本地持久化。 NSUserDefaults支持的数据格式有:NSNumber(Integer、Float、Double),NSString,NSDate,NSArray,NSDictionary,BOOL类型。[NSUserDefaults standardUserDefaults]是系统提供
2015-03-06 17:11:10 861
转载 ios 点击界面空白处隐藏键盘
IOS_点击界面空白处隐藏键盘IOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能取消键盘的显示,用户体验不好,我们可以实现点击键盘以外的空白区域来将键盘隐藏,以下是结合隐藏键盘的几种方法:第一,两种可以让键盘隐藏的方法: 1.[view endEditing:YES] , 这个方法可以让当前View取消第一相应者,从而让View上的所有控
2015-03-06 15:36:15 1130
原创 ios_CoreData
CoreData基本概述:CoreData:把model存在面向对象的数据库(可以存在本地),常用于存取数据以及复查查询等,它通用于ios&Mac os.property list:包含六种常用类,分别为[NSArray,NSDictionary,NSNumber,NSString,NSData],这六种类的Model可以存储在本地.在Xcode中通过Add Entity 去添加:At
2014-12-07 12:28:07 706
空空如也
ios-lable中文无法显示
2014-12-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人