自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

iOS杨叫兽技术博客

iOS杨叫兽的个人技术博客,记录技术成长点滴

  • 博客(50)
  • 收藏
  • 关注

原创 WWDC 2018 Session 414 Understanding Crashes and Crash Logs

Session 414 主要讲的是如何解读crash logs,后半程对多线程竞争引发bugs的分析和解决方案都十分精彩,另外结合这篇博客一起学习效果更佳!

2018-09-12 09:55:27 206

原创 WWDC 2018 Session 412 Advanced Debugging with Xcode and LLDB

WWDC 2018 Session 412 Advanced Debugging with Xcode and LLDB,这个session主要讲述了Xcode中的调试技巧,配合这篇博客学习效果更佳。

2018-09-11 13:12:25 239

原创 通过命令行对iOS模拟器进行截图和录制视频

刚才通过查看Xcode8.2.1的Release Notes,里面说了这个一条:New Features Dragging an app onto a Simulator window installs the app. (23387069) You can take videos and screenshots of Simulator using the xcrun Xco...

2016-12-23 13:25:55 692

原创 Mac 输入技巧

在以前的文章介绍过一些MacOS输入法的技巧,现在再介绍另外3个技巧。 匹配当前输入样式的粘贴 :Shift+Option+Command+V 输入表情与符号 :Ctrl+Command+空格 显示键盘能打的特殊字符 首先在顶部输入法菜单中找到显示虚拟键盘然后会显示虚拟键盘,这时按住一些功能键就会显示可以打的特殊字符。比如我们要打苹果图标字符,就需要按住s...

2015-11-04 11:12:50 163

原创 解决高斯模糊在iOS 9下无法达到边缘问题

高斯模糊是Core Image中的一个滤镜。由于模糊是一个卷积的操作,所以模糊的效果是对一个区域进行的算法。这样就导致了有可能模糊的图像大小小于原图的大小。iOS 8以后可以采用如下方法将缩小的模糊图片放大到之前的大小:CIImage *inputImage = [CIImage imageWithCGImage:self.originImage.CGImage];CGImageRef r...

2015-11-03 17:50:23 565

原创 利用编译器检查未实现的方法

LLVM6.0编译器有个检擦未实现方法的开关,一般在新建工程的时候默认都是打开的,但是老工程就不一定了。 打开这个开关后,xcode在编译时就会检查未实现的方法声明并声称警报,包括通过performSelector绑定的方法。 之所以要特意提一下这个问题,是因为我之前被performSelector这个问题坑过,导致了很大的损失,希望大家能多多注意。 ...

2015-03-26 16:41:19 352

原创 Lua教程

Lua是一种脚本语言,很多iOS平台的游戏就是用他来开发的。现在分享三篇Lua的教程:30 分钟学会 Lua 编程(一)30 分钟学会 Lua 编程(二)30 分钟学会 Lua 编程(三)...

2015-01-27 17:02:39 109

原创 利用xcconfig与info.plist定制不同编译条件下的工程设置

今天仔细研究了一下xcconfig这个文件,xcconfig文件是用来配置project&target的build settings设置的,可以根据不同的编译环境分别配置。xcconfig支持自定义配置键值,同时info.plist可以通过${key}来取得配置的值。这样就可以通过不同的编译环境实现不同的配置条件了。具体可以参考以下文章:xcconfig:http://liuwei...

2015-01-22 16:33:56 262

原创 使用block生成NSPredicate

NSPredicate是用来对数组和字典进行筛选的工具,NSPredicate支持采用正则表达式的方式生成条件筛选语句。但是如果我们对正则表达式不熟悉,或者筛选条件比较复杂,可以使用NSPredicate类里提供的采用block方式生成筛选条件的API来生成NSPredicate对象。+ (NSPredicate*)predicateWithBlock:(BOOL (^)(id evalua...

2015-01-17 17:48:20 432

原创 获取沙盒文件夹大小

2015.3.19补充:获取沙盒文件夹还有一个更简单,参数更少的方法:NSURL *documentDirectoryURL = [[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask][0];提供一种获取沙盒文件夹大小的方法。没有使用对文件夹内的文...

2015-01-17 17:34:08 187

原创 利用Octopress框架在github上搭建个人博客

博主写博客也有一年多的时间了。之所以在网易开博客,是因为当时公司里好多人都是来自网易,自然对网易很有好感。我的初衷是想把自己在工作中遇到问题以及解决方案记录下来,方便后来查阅。没想到一年的时间博客会积累起8000以上的访问量,着实让我惊讶,从这点来看目前iOS开发依然很火。偶然间看到粉笔网iOS开发者唐巧的技术博客,是通过Octopress在github pages上搭建,并且拥有自己的独立域...

2013-06-25 23:40:03 113

原创 去除NSArray中重复元素的方法

有时需要将NSArray中去除重复的元素,而存在NSArray中的元素不一定都是NSString类型。今天想了想,加上朋友的帮助,想到两种解决办法,先分述如下。 利用NSDictionary的AllKeys(AllValues)方法 可以将NSArray中的元素存入一个字典,然后利用AllKeys或者AllValues取得字典的所有键或值,这些键或值都是去重的。示例代码:NSA...

2013-05-21 12:10:02 115

原创 快速查看iPhone照片信息

今天看到一篇文章,发现可以通过图像捕捉快速查看手机照片信息,同时也支持一次删除多张照片,看来不用非要打开iPhoto了。 

2013-05-15 01:51:45 750

原创 UIView UIControl UITextField详解

今天看到有人总结了三个常用类:UIView、UIControl和UITextField的详细使用说明。感觉写的不错,好多方法和属性以前都没有仔细研究过。现在把链接记录在此,以备将来不时之需。 UIView  UIControl  UITextField ...

2013-05-15 01:51:05 241

原创 DLog的使用

Cocoa中NSLog虽然使用方便,但是有时候NSLog并不能满足程序员调试程序的全部需求。比如打印的结果位于哪个类中?是在哪个类中打印的?或者具体是在哪行打印的等等。所以对于程序员来说急切需要可以满足上述要求的Log方法。DLog就可以完全替代NSLog,并且满足上述的需求。DLog本质上就是个宏替换,可以输出类名,方法名和行号。DLog具体代码如下:#ifdef DEBUG#defi...

2013-05-12 08:24:22 396

原创 iOS中3种正则表达式的使用与比较

之前我在博文中介绍过iOS中自带正则表达式的使用(传送门),后来我发现其实iOS中有三种方式来实现正则表达式的匹配。现在将他们都记录在这里: 利用NSPredicate(谓词)匹配 例如匹配有效邮箱:NSString *email = @“nijino_saki@163.com”;NSString *regex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-...

2013-05-11 10:52:37 97

原创 推荐两款Xcode插件:KSImageNamed & ColorSense

之前没怎么接触过Xcode插件,最近发现有人给Xcode做了一些方便编程的插件。今天就推荐两个我个人认为比较好的。 KSImageNamed 网站地址 KSImageNamed是一款方便填写图片文件名称的插件。支持NSImage和UIImage,当你写到[UIImage imaged:的时候,插件会把项目中的图片名称提示出来,并且还有预览功能,对经常用代码生成图片视图的童鞋十分方便。...

2013-04-27 11:12:25 116

原创 如何自己定制iOS框架(framework)

有些公司比较喜欢将自己写的代码封装起来,一般会封装成静态库,这样就不会对外暴露源代码。但是静态库的制作有些麻烦,有些文章说需要针对模拟器和真机封装成两个版本的静态库。最近博主无意间发现了一个可以自己制作的ios framework的东西,使用之后感觉非常方便,封装的非常好,就像系统自带的framework一样。具体教程请看这里。需要注意的是在封装framework之前要设置run sche...

2013-04-23 11:23:11 113

原创 解决xcode升级4.6.2后PCH编译报错问题

苹果最近向开发者发布山狮10.8.4beta版,自然会升级xcode。4.6.2版的xcode升级完后编译工程发现报了一个PCH编译错误。截图如下: 上网查找解决办法,发现是xcode版本冲突造成的,解决的办法是:1.选择Xcode菜单的Product2.按住键盘的Option键,然后选择图示的Clean Build Folder ...

2013-04-18 21:52:26 174

原创 利用QuickTime Player进行屏幕录制

之前博客有一篇提到关键帧动画,需要用一个视频来说明。我当时由于没有接触过屏幕录制这一块,所以搞的有些狼狈。最近在网上发现其实QuickTime Player就有录制屏幕的功能,对于一般的需求还是可以应对的。附上3篇教程。 教程1  教程2  教程3 实际使用中发现QuickTime Player好像只能录制来自麦克风的输入音频,而不能采集电脑发出的声音。如果有...

2013-03-28 11:28:47 441

原创 Mac 自带拼音输入法技巧

偶然发现一些山狮系统自带输入法的技巧,纪录一下。1.无论你在英文输入法中还是中文输入法中,如果想输入大写字母,可以使用shfit +(字母).2.在你是使用简体拼音时可以使用 Shift + 6 调出表情输入如:o(^_^)o。3.如果你遇到不认识的汉字,可以按 Shift +Option+L,复制或者输入你不认识的汉字就可以查到拼音。 我之前一直使用搜狗拼音输入法Mac版...

2013-03-27 15:12:41 788

原创 Mac提取应用程序图标的方法

转载一篇关于提取应用程序图标方法的文章,以备后用。  

2013-03-27 10:02:01 161

原创 利用 Mac OS 自带计算器进行货币换算

真没有想到mac自带的计算器还暗藏着货币换算功能,具体操作方法见传送门。需要提示的是计算器的显示类型不能是编程器。   

2013-03-26 15:11:44 354

原创 如何启用 Mac OS X Root 账户

转载一篇启用root账户的文章,希望对做开发的童鞋有用。 

2013-03-26 11:43:57 79

原创 利用CAKeyFrameAnimation实现仿MAC登录界面密码不正确晃动效果

2016.12.29 更新:iOS7 推出了UIView的关键帧动画API,代码就不用像下面写的那么麻烦了。产品有时候会提一些不切实际的需求,比如下面这个:非要在iOS设备上实现登录输入密码不正确时密码框晃动3次的需求。纵观我见过的应用,还没有见过输入框带这种效果的。不过既然要实现,就要想办法争取做出来。实际效果见下面视频:最初我的想法是用UIView的animation代码块来实...

2013-03-16 08:08:58 157

原创 苹果为软件开发者们启用了更简短易记的链接地址:appstore.com/xxxx

苹果 App Store 和 Mac App Store 应用商店的应用地址,都是 https://itunes.apple.com/cn/app/reeder-for-ipad/id375661689?mt=8 这种很长很难记的链接。为了让开发者宣传自己产品时,下载地址更简短易记,苹果开放了 appstore.com “短” 链接服务。规则如下:开发商主页 iOS:http://app...

2013-03-15 12:02:14 842

原创 【转载】UITableView方法大全

添加删除内容实例一、建立 UITableViewDataTable = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 420)];[DataTable setDelegate:self];[DataTable setDataSource:self];[self.view addSubview:DataTable];...

2013-03-15 10:57:28 80

原创 【转载】UIApplicationDelegate 代理函数调用的时间(应用程序生命周期)

UIApplicationDelegate 包含下面几个函数监控应用程序状态的改变: application:didFinishLaunchingWithOptions: applicationDidBecomeActive: applicationWillResignActive: applicationDidEnterBackground: app...

2013-03-15 10:51:32 106

原创 圆形进度条的绘制与使用

demo地址:https://github.com/nijino/CircularProgressView项目中总会遇到一些非原生类的UI效果。最近我就遇到了一个音频播放圆形进度条的需求。在网上找了一下,感觉写的都比较复杂。本来需求就不是很复杂,干吗要整复杂呢?于是我参考类似的第三方库代码自己写了一个,并把它封装,放到了github(地址)上。封装后在要生成进度条时设定圆形进度条的...

2013-03-08 13:43:40 108

原创 本地化UIImagePicker中的文字

项目中经常会用到UIImagePicker类来取得系统相册中的图片,但是细心的人会发现UIImagePicker控件里的文字不论在什么语言下都只有英文版本,这让非英语应用在使用UIImagePicker时感觉很尴尬。那么有没有什么办法把上图中的“Cancel”、“Use”和“Move and Scale”变成“取消”、“使用”和“移动和缩放”呢?今天看到一位大牛的一篇技术博客,正好讲到...

2013-02-28 15:23:31 76

原创 项目代码行数统计命令

最近偶然发现一个可以统计工程各个文件中的代码的行数和所有文件的总代码行数的命令,该命令要在具体的工程目录下执行。具体的命令如下:find . "(" -name "*.m" -or -name "*.mm" -or -name "*.cpp" -or -name "*.h" -or -name "*.rss" ")" -print | xargs wc -l

2013-02-06 09:58:14 158

原创 【转载】iOS动画效果和实现

转载一篇有关iOS实现动画动画的博客(地址)。这篇博客讲的比较全面。我个人比较推荐代码块实现动画,因为代码块实现了闭包,不用设置代理,避免来回找动画执行完之后要执行代码的位置。另外代码块语法从iOS4就开始支持了,根本不用担心系统兼容性问题(请问现在还有人用iOS3.0吗)。...

2013-01-23 11:03:13 65

原创 如何UIView只响应一个按钮

一些应用经常会在一个UIView上放多个按钮,比如登录页面,就会有注册与登录按钮。理论上讲注册和登录按钮是不能同时按下的,但是如果你同时按下这两个按钮,这两个东东都会显示响应高亮状态,其结果就不可预知了。这种情况经常会被测试童鞋当成bug。其实UIView类属性有个exclusiveTouch属性,表示是否该view响应触摸是排他的。默认的设置是NO,即不排他。如果想让按钮排他响应,只需将按钮...

2013-01-19 10:44:21 125

原创 CocoaPods--Xcode第三方库集成管理

2013.4.26附补充:可能是我开始使用的版本比较早,我发现在工程pods文件夹下有还有个pods文件夹,他的容量很大,总共有3万多个文件,而且是递归调用,我怀疑是cocoapods的bug。因为我发现只要一开Xcode,CPU的温度就会立马升高,而且打开活动监视器,发现好多git进程,这些git进程占用CPU资源极高。后来我把那个文件夹删了,整个系统运行流畅,并且CPU的温度也下来了。希望...

2013-01-10 15:57:04 100

原创 【转载】iPhone实战:定位与地图

今天在CocoaChina上发现一篇讲定位与地图的教程,感觉写的比较透彻,通过阅读该文会对定位相关的各个类和协议有更清晰的认识,现将链接记于此,备用。iPhone实战:定位与地图 ...

2013-01-07 23:37:50 116

原创 【转载】多线程GCD的使用

在红黑联盟上看到一篇关于多线程GCD的教程文章,写的深入浅出,特转载于此,以备不时之需。原文链接另外补充两个GCD代码,都是Xcode snippet里面提供的: Dispatch After 主要用于延迟执行一些代码。示例:int64_t delayInSeconds = 1.0;dispatch_time_t popTime = dispatch_time(DISPATC...

2013-01-03 19:32:20 63

原创 【转载】Cocoa中的MVC

原文链接  作者:子目丁一今天在网上看到一篇论述ios里面MVC模式的博文,个人感觉讲的非常好,非常透彻,当然主要知识点还是斯坦福大学iphone课程里的。其实开发者应该多看看斯坦福大学iphone课程,还原某些知识点的本来面目,而不是随便乱用。原文如下:我们今天谈谈cocoa程序设计中的 模型-视图-控制器(MVC)范型。我们将从两大方面来讨论MVC: 什么是MVC? ...

2012-12-28 15:09:15 153

原创 【转载】Xcode 自动生产Html项目文档

2016.12.29 更新:Xcode 8 增加了一个新功能:Add Documention。具体位置是在Xcode的Editor菜单->Structure->Add Documention,也可以使用快捷键:Option+Command+/。它的功能就是给类和方法生成格式化的注释内容。转载博友小朱(小朱博客)的一篇文章,没有验证文中生成文档方法的正确与否,但是欣赏后面对注...

2012-12-28 13:00:33 216

原创 提取info.plist各项属性

2015.1.17 补充:如果已经知道了info.plist中的某个键名称,可以使用objectForInfoDictionaryKey:这个方法直接取值,例如:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"]直接取出工程的版本号。我们可以通过NSBundle对象的in...

2012-12-28 11:10:06 196

原创 Mac OS X 快捷键

Mountain lion 发布有一段时间了,新系统固然出色,但如果能记住并使用一些快捷键,会令你的效率成倍提升。以下摘录一些常用的快捷键,以备参考。说明: CMD:command键 OPT:option键 CTRL:control键 fn:fn键  shift:shift键 tab:tab键 DEL: delete键...

2012-11-11 23:00:33 136

空空如也

空空如也

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

TA关注的人

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