杨叫兽的技术博客

关注Objective-C、iOS、Mac开发与技巧,重视代码的简洁与质量

Objective-C中3种枚举方法耗时比较

集合类对象(NSArray、NSDictionary、NSSet及其子类)在Objective-C中十分常见。经常会有遍历集合中所有对象的需求,Objective-C中遍历集合中对象的方法有三种:

  1. C语言的for循环遍历;
  2. Objective-C的快速枚举;
  3. 集合对象的枚举块语法。

给NSLog增加输出功能

之前在网易老博客:DLog的使用里讲到编写一个DLog宏替代NSLog输出更多的打印信息。如果之前工程里NSLog很多就需要把所有的NSLog替换成DLog。这么做是不是感觉有点麻烦?其实还有更简单的办法,就是直接写一个NSLog的宏,替换掉Xcode中已存在的宏,同样可以打印需要的信息。只需将下列代码放入prefix.pch文件中:

iOS调用Emoji表情的方法

Emoji是iOS自带的表情符号,在短信和一些通讯软件中使用起来非常有意思。而如果在iOS软件中能使用这些表情符号,更会让软件显得生机勃勃,比如下面这个软件的评价视图:

在iOS应用中使用自定义字体

开发过iOS应用的朋友都知道,iOS平台里的字体样式很多,其中的大多数都很美观。但是在这些字体中并没有中文字体,如果想用一些好看的中文字体(比如楷体、隶书等)该怎么做呢?

Settings Bundle的应用

Settings Bundle是iOS开发中独有的一个特性,它可以存放app的一些设置,使用起来非常方便。最近公司有一个项目用到了这个技术,于是我认真的研究了一下,发现了一些需要注意的地方,想跟大家分享一下。

Interface Builder中的技巧

在我工作中经常会遇到有人吐槽Xcode中的Interface Builder(以下简称IB)不好用的开发者。在我看来,IB是一个非常棒的可视化开发工具,可以非常快捷的设置UI控件的大部分常用属性。下面就说两个IB中的技巧。

ARC在IBOutlet属性中的使用

ARC提供四种所有权修饰符:

  • strong
  • weak
  • unsafe_unretained
  • autoreleasing

其中前三个可以用于属性中声明所有权。对于这三个用于属性声明的修饰符,下面分别讲讲他们对应的使用场景。