Xcode 装逼插件:打字的震屏和火花效果
来源:互联网 发布:淘宝客服热线 编辑:程序博客网 时间:2024/06/10 01:20
转自:http://www.cocoachina.com/ios/20151217/14668.html
Xcode 装逼插件:打字的震屏和火花效果
2015-12-17 06:18 编辑: lansekuangtu 分类:iOS开发来源:破博客
124 16144
招聘信息:
- iOS开发工程师
- Android开发工程师
- iOS软件工程师
- 手游JAVA 服务器端主程
- cocos2dx手游客户端主程
- iOS开发工程师
- iOS开发(资深3人,普通若干)
- iOS开发工程师
- iOS讲师
- iOS资深开发工程师
- Cocos2d-x开发工程师
作者:才怪 授权本站转载。
最近微博上在流传一个Atom编辑器的插件:activate-power-mode,装上这个插件后打字会有震屏和火花效果,非常牛逼,效果如下:
据说有人用了,并且还是机械键盘,差点被同事打断手了。
于是我花了几天的下班时间,写了个Xcode版的插件,模仿了这个效果:
插件下载地址为:https://github.com/poboke/ActivatePowerMode,也可以在Alcatraz上搜索ActivatePowerMode进行安装。
这些功能实现起来也不难,主要是获取光标所在位置的代码颜色花了比较多时间。
我一开始以为代码高亮的颜色是由NSAttributedString控制的,但是我获取到的属性里只有字体字号等属性,没有NSForegroundColorAttributeName这个字段,所以只能用别的方法寻找。
用逆向思维思考一下,因为代码高亮是由配色方案管理的,切换配色方案时,代码颜色就会改变。而配色方案是根据单词的类型来设置颜色的,所以猜想可能存在某个方法,可以读取或设置某个范围的文字的颜色,这样才方便配色方案功能的实现。
先用关键字color在Xcode的私有类头文件里搜索,把搜到的方法名输出到一个文本里。然后再用关键字NSRange搜索,很快就发现了一个可疑的方法:- (id)colorAtCharacterIndex:(unsigned long long)arg1 effectiveRange:(struct _NSRange *)arg2 context:(id)arg3。然后再hook这个方法,果然返回了相应的颜色。
0 0
- Xcode 装逼插件:打字的震屏和火花效果
- xcode 也有atom 装逼插件activate-power-mode
- 打字效果的文字特效
- JQuery插件开发 -- 实现打字效果
- jQ模拟打字效果插件typetype
- 打字效果的文字广播
- 简单的页面打字效果
- atom音乐火花效果
- atom音乐火花效果
- idea装逼插件
- typer.js,可能是最小但功能也不多的模拟打字效果插件
- iOS开发之牛逼资源——那些不能错过的Xcode插件
- ANDROID模拟火花粒子的滑动喷射效果
- 大神是如何装逼的 之 vim插件使用taglist和nerdtree
- 打字效果
- 打字效果和移动光标最后
- 打字效果的带链接的新闻标题
- JS实现简单的打字效果
- 程序员如何谋划出月薪3万
- Python--基础程序设计
- <supports-screens android:anyDensity="true" />
- VMware苹果开发环境
- UIButton与UIImageView的区别与联系
- Xcode 装逼插件:打字的震屏和火花效果
- Joomla!上传中文文件
- hiveserver问题
- 简单理解java反射机制
- 杂记<二>
- MySQL5.6分区数量太多引发的血案
- 2016年第一周目标制定
- 判断js中各种数据的类型方法之typeof与0bject.prototype.toString讲解
- ajax 跨域访问问题