自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 尝试Swift包管理工具

每种语言基本上都官方的包管理工具(package manager),比如nodeJS的npm,随着Swift的开源,官方也退出了代码管理工具,即SPM(Swift Package Manager),下面来尝试下这个:Swift包管理器的官方github地址安装:如果想要确认是否已经安装了包管理器,输入以下的命令行:swift build --help如果输出的是关于用法,那么证明安装好了,否则会看到

2015-12-25 10:46:37 2271

翻译 撤销Undo

“撤销”功能在OS X上很常见,想法就是:假如用户及时意识到犯的错误,可以回退错误的动作。通常,Mac应用会维持内部撤销动作(undoable actions)的栈,选择Edit->Undo或Command-Z来回退该栈顶部的动作,当然,动作也可以重做(redo)。一些iOS应用,可能也需要有限的撤销功能,当然,这并不难实现。一些内置的视图,特别是涉及到文本输入(text entry)的,比如UIT

2015-12-22 22:05:36 1568

翻译 Text

出现在应用界面上的文本往往以NSString或者NSAttributedString的形式存在,NSAttributedString为NSString添加了文本样式,包括不同的字符样式和段落级别的特点,像对齐(alignment)、行距(line spacing)和边距(margin)为了让你的NSString或者NSAttributedString出现在界面上,你可以将它绘制到图形上下文(grap

2015-12-20 16:40:45 1204

翻译 遮罩、模糊效果和动画

Masks,Blurs and Animation一.遮罩(Mask) 裁剪将绘图限定在路径的区域内,如下面示例:- (UIImage *)getImage:(CGSize)targetSize{ UIGraphicsBeginImageContextWithOptions(targetSize, NO, 0.0); CGRect targetRect =[self SizeMa

2015-12-18 15:11:28 686

翻译 路径基础<1>

贝塞尔路径(Bezier path)是iOS绘图工具中最重要的部分,它允许你创建和改变形状、建立裁剪路径、定义动画路径等等。无论你构建自定义视图,添加像PS那样的特效,或者执行类似画线、画圆的普通任务,UIBezierPath类会让你的开发更加容易和强大。一.类便利方法UIBezierPath类方法用来构建矩形(Rectangle)、椭圆(Oval)、圆角矩形(Rounded Rectangle)和

2015-12-18 09:24:20 700

原创 Swift初始化方法

Swift中有两类初始化方法:designated(指定)和convenience(便利)初始化方法。convenience初始化方法必须调用同一个类(self)中的designated初始化。designated构造器:init(parameters){}convenience构造器convenience init(parameters){}特别要注意构造器的继承问题首先明确的是:子类

2015-12-12 20:26:19 1443

原创 Swift中的if语句使用where

在if里使用where语句是对语句进行约束。var optionName: String? = "Ricky"if let name = optionName where name.hasPrefix("R"){ print("\(name)")}if语句执行的是把optionName的值赋予常亮name,如果没有值将为false退出if,而在这个语句里,where执行的是判断可选变量o

2015-12-12 11:57:52 2304

原创 MBProgressHUD源码分析

MBProgressHUD是Objective-C写的第三方库,用来作为进度指示器使用,原版Objective-C实现,当然,也有Swift实现,本文是依据原作者的Objective-C源码来分析的。MBProgressHUD使用时本质是一个尺寸为屏幕尺寸(显示时能完全遮住其它视图)的UIView,而最好将它添加到窗口上或者窗口的根视图控制器的根视图上。MBProgressHUD上主要由三个子视图:

2015-12-11 21:44:41 548

原创 Realm学习<1>

Realm,为移动设备而生,替代SQLite和Core Data。为你省下数周的时间和数千行的代码,帮你创造出更棒的用户体验。(这是摘自官网的原话,官网文档有中文的版本,开发团队中貌似有一个中国人)Realm的特点官网罗列的很清楚,比如:Realm文件可以跨平台共享,让Java、Swift和Objective-C使用相同的抽象模型访问,从而让您在各个平台上使用尽可能相似的业务逻辑。大家可以到官网上

2015-12-11 14:01:15 433

原创 Objective-C的成员变量、属性与带下划线属性的总结

成员变量与属性是不同的,先看如下示例代码:User.h文件#import <Foundation/Foundation.h>@interface User : NSObject{ // 成员变量 NSString *name; NSInteger age;//typedef long NSInteger;}// 属性@property(nonatomic,copy)NS

2015-12-09 16:54:38 5436

原创 Objective-C之谓词NSPredicate

NSPredicate用于定义一个逻辑条件,通过该条件可执行搜索或内存中的过滤操作。一.谓词的定义谓词是由NSPredicate对象来代表,在实际编程中会直接使用NSPredicate的predicateWithFormat:方法,以一个谓词字符串为参数来创建NSPredicate对象。//无占位符NSPredicate *pre = [NSPredicate predicateWithForma

2015-12-09 11:53:08 480

原创 对象复制

一.copy与mutablecopy方法copy方法总是返回对象的不可修改的副本;mutablecopy方法总是返回该对象可修改的副本。当程序对复制的副本进行修改时,原对象不会受到影响。 NSString *book = @"Hello"; NSMutableString *bookMutable = [book mutableCopy]; [bookMutable replace

2015-12-08 23:18:54 394

原创 重温C语言之预处理命令

预处理命令:以“#”符号开头的编译指令(预处理命令属于C语言编译器)预处理的主要作用: 1. 将源文件中以”#include”格式包含的文件复制到编译的源文件中 2. 用实际值替换使用”#define”定义的字符串 3. 根据”#if”后面的条件决定需要编译的代码预处理命令: 1. “#define”:宏定义 2. “#include”:将另一源文件嵌入到带有”#include”的源文件中

2015-12-08 14:25:05 404

原创 关于iOS父(容器)视图控制器管理子视图控制器的根视图的思考总结

刚接触iOS开发的时候,手机应用上的一些界面老是无法弄清楚实现原理,后来通过阅读一些源码,逐渐了解了某些界面的一些实现方法。这里谈到的是父视图控制器管理子视图控制器视图的相关知识,归纳了几种情况,如果大家发现新的或者有好的解决方案,请联系我,我会很快更新与大家分享:1.侧栏:2.滚动切换子视图控制器:3.自定义TabbarController:4.同一界面放置两个tableview:以上可能都要涉及

2015-12-07 22:54:30 871

转载 Xcode插件

Xcode所在的文件目录:~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins开发流程:<1>原始开发一.配置1.新建Xcode项目,选择Framework & Library,接着就是选择Bundle类型,扩展名为xcplugin2.在工程中的info.plist文件中配置,XCPluginHasUI:布尔类型,表明插件是否有

2015-12-06 18:02:43 462

翻译 iOS网络底层之CFNetwok

苹果网络底层的API是CFNetwork API。描述CFNetwork最简单的方式是:它是苹果对BSD Socket API的特定扩展,CFNetwok 栈是基于和依赖BSD Socket API的。我们也会使用NSHost和系统配置框架来获取网络地址信息和检查网络状态。相对于CFNetwork,BSD Socket最大的优势是兼容其他Unix系统,但是,如果你的应用是苹果设备专用的,推荐使用CF

2015-12-05 00:47:35 793

翻译 iOS网络底层之BSD Socket Libra1ry<2>

注:Echo server(回显服务器):提供回显服务的程序,就是收到什么,然后就发送什么的程序。1.创建一个echo server(回显服务器)

2015-12-03 23:19:49 464

翻译 iOS网络底层之BSD Socket Libra1ry<1>

注: POSIX :表示可移植操作系统接口(Portable Operating System Interface ,缩写为 POSIX ),POSIX标准定义了操作系统应该为应用程序提供的接口标准BSD :(Berkeley Software Distribution,伯克利软件套件)是Unix的衍生系统Byte order:字节顺序,指的是数据存储到内存中的顺序,如果要让两台使用不同字节

2015-12-03 23:02:46 958

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除