有多色 - 开发小记

某一天无意在微信中发现一款 HTML5 的小游戏,当时感觉挺新颖的,在一群色块中找到那个具有一点色差的,玩了几把感觉比较有意思,那么移植到 iOS 上来玩玩吧? 于是花了一下午用 Objective-C 写出来了一个简单版,确实比较简单,本来想拿 SpriteKit 练手写这么个东西,后来发现比较牛刀小用,于是直接用 UIKit 开整了。 放两张之前 App Store 的截图:

项目

掌中站 - iOS 一个专为移动平台开发的站长工具,也可以称为SEO工具,你可以随时随地了解自己网站的各项指标情况,有效地提高对站点的认知度、以便更合理地对站点进行优化。 - 介绍页面 | App Sotre 有多色 - iOS 搞着玩的一款小游戏,测色弱之好助手! App Sotre

海岛风情 - 泰国普吉岛六日游

人生需要走走停停,那样才不会错过路上的风景。 就像我们每天步履匆匆的上班下班,可身边有些人却不知道城市长什么样子,旁边的人都在做些什么…这都是匆忙带来的遗憾。 期待了一个月的普吉游,总算在五一前划上圆满的句号,第一次出国门门,第一次真正意义上的旅游,应该好好记录下来,回首往昔时再看看应该是很不错的一件事。本想在每天行程结束在酒店就把把游记写下来,可惜没有电脑,手机打字简直不能忍。 整个行程最大的感触就是 “中国游客太多了”,而且大妈大叔居多,走到哪都是,商场、机场、酒店、海滩、饭店… 另外一个最大的感触就是 “会说中文的泰国人太多”,可能是因为在旅游地区,几乎所有的小商小贩、店家、船家、服务员都会说中文,至少会几句简单的;有在一个化妆品店看到很奇特的一幕:一个泰国店员用着流利的普通话在跟一个中国人介绍某某化妆品,“啥啥品牌,补水,效果咋样咋样…您适合….”,顿时感觉走到了国内商场… 出行前也算做了一些功课,由于是公司定的旅游团和行程,拖拖踏踏整个流程很没有节奏,直到出行前两天才大概直到具体行程安排,很懊恼啊…因为这次出行主要在泰国普吉府,于是提前做好了大部分准备工作,由于准备比较充足,后续玩的也比较顺畅。 用 iOS 自带的 <提醒事项> APP 就可以很好的列出出游备忘录,还可以多人共享查看和编辑,真是很方便呢。

EGOCache 源码解析

今天说说一款叫 EGOCache 的开源项目,一个简单、线程安全的基于 key-value 的缓存框架,原生支持 NSString、UI/NSImage、和 NSData,也支持储存任何实现 <NSCoding> 协议的类,可以设定缓存过期时间,默认是 1 天;ARC、基于 Block,同时支持 iOS 和 OSX 平台。

日语五十音假名临摹校验算法

这是一篇躺在笔记本里接近两年的技术笔记,今天正好想起了,编搬过来分享一下 这是在学校的时候做日语五十音APP的临摹模块中一个技术点,当时也是纠结了一阵子才总结出方法的,遂记录以纪念之~ 需求 大致需求是要在手机上实现类似传统毛笔字临摹字帖练习的功能,画出暗隐的底文,然后每一划的 起笔点 和 落笔点 给出红圈提示,规定起落在指定红圈区域中,才算正确,并给出下一划的提示,以达到简单的正确性临摹检测。当然,这里只是简单的只识别首尾锚点(红圈),如果要增强正确性检测,可以每一笔多增加几个检测锚点。 预览 原理 每个假名最多4笔,也就是最多8个点 开始的时候提示第一个落笔点,触摸后提示第二个点,也就是第一笔点结束点,松开后判断两个点是否在范围(圆圈)内,如果都在点话,表示这一笔临摹大致正确,取消第一笔点这两个提示圈,然后就开始第二笔,如此循环… 要实现此功能肯定要有一个标志变量来保存进度,也就是写到第几笔了,不然写到后面会干涉前面已经正确的笔画。 还需要事先录入所有需要临摹的字符检验点坐标集合,当时另外做了一个小工具,用于自动生成 点 / 松 坐标并输出至文件以便程序读取 (如果手动取点每个字符也太折腾了) 实现 用的【ACEDrawingView】来作临摹板,稍作修改,添加两个协议函数来返回出开始触摸的坐标和起指(抬起)的坐标。 把所有的点保存到一个数组,对应每个点的提示圆圈也保存到另一个数组。 一个标识变量(okNumber)存储当前写到第几笔了。 代码 -(void)touchBegan:(CGPoint)point { beganPoint = point; if (okNumber == 0) { if ([self isInRound:point and:[pointArray[0] CGPointValue] in:kRadius]) { [self.

[iOS] UITextView 追加文字自动跳到顶部解决方法

最近在做一个项目里遇到类似于网游公共对话窗口的文本框,由于需求比较简单,就用了 UITextView 实现,再配合 NSAttributedString 可以很轻松地实现颜色、字体等自定义;但是当我重新赋值设置 TextView 的 text 或 attributedText 属性时,会自动滑动回顶部,但我需要 TextView 超出屏幕始终定位在底部,于是我用 scrollRangeToVisible: 方法在 Append 后手动滑动到底部,可是还是会先由系统滑动到顶部,再滑倒底部,这个动画看起来很龊,于是开始了漫长的求解寻找之中…

Cocoa 新的依赖管理工具:Carthage

说到 iOS 的依赖管理工具,大家一定首先想到的是 CocoaPods ,不错,CocoaPods 确实是一个很好依赖管理工具,已然成为了 Cocoa 依赖管理的标准,丰富的支持库、文档等等,CocoaPods 相关的文章有很多,这里就不一一赘述了。 今天要介绍的是一款新的依赖管理工具,名曰 “Carthage”,名字有点难理解,简单方便,完全独立,不修改 XCode 项目文件或配置。 简介 我之前很少用 CocoaPods,很大一部分原因就是因为麻烦,仅个人感觉,需要牵扯 XCode 项目文件;而 Carthage 就很好的解决了我之前的烦恼,轻耦合,更灵活;使用 xcodebuild 工具来编译依赖项目成二进制 Framework,再引入到项目中去。

新年快乐!

新的一年,落日期得落 2015 了,希望不会像以前一样一段时间内还写错年份… 昨天晚上去解放碑兜了一圈,差点没被挤死…早上起来就看到上海滩踩死了三十多人的新闻心里一寒,我这也算是经历生死听跨年钟声啊。 这里是12点的时候随手用手机录的一段视频,大家也来感受下重庆解放碑跨年的气氛:

博客主机换到搬瓦工

在 V2 上看到很多人推荐搬瓦工,也就是 bandwagonhost,正好之前保罗主机赞助的一年空间要到期了,于是拿信用卡刷了台 Basic VPS - Unmanaged - 5G PROMO V2 ,不知怎么这个档的VPS没有出现在官网的列表中,只能通过链接进去,隐藏入口?配置如下: CPU :1核 内存:512 MB 流量:500 GB

在 Koding 上搭建 Shadowsocks

之前用的一个别人分享的 Shadowsocks 被停用了,一上午没好好上个网。无奈之际正准备在 Digitalocean 上自己搭建一套 Shadowsocks 服务端的时候,又想起了 Koding,一个支持在线编程的免费 VPS,唯一遗憾的是该服务会自动断线,不能常驻,也许这就是免费的限制。 Koding 允许建立一个免费的虚拟机,配置如下 1 Core 1GB RAM 3GB Total Disk