自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CocoaChen

write the code change the world

  • 博客(66)
  • 资源 (9)
  • 收藏
  • 关注

原创 Swift版PhotoStackView——照片叠放视图

前言之前流行过一种图片展示视图——photo stack,即照片叠放视图。大致上是这个样子的: (图片出自code4app) 现在我们已经能够使用UICollectionViewLayout来实现这种视图了。Apple给的示例代码中就有这样一个layout,并且示例代码中不仅仅是展示这样的视图,还有非常棒的layout过度动画(结合手势)。在这之前,也有非常多的开源代码能实现这样的效果。本文

2015-06-02 22:52:04 5095 1

原创 Xcode 6.3.2 bug:编辑界面乱跳问题

今天刚把Xcode升级到6.3.2,结果写swift的时候界面各种问题频出,一会代码行数没了,一会整个屏幕没有代码了,一会从这里突然跳到那里。。。简直不能忍。后来才知道是自定义主题的问题。当自定义主题中:字体大小不一致出现斜体出现粗体时就可能产生这种问题,所以解决方法非常简单,直接选用系统默认主题,或者把自定义主题字体大小设为一样把所有斜体和粗体移除即可

2015-06-02 21:11:43 2160 1

原创 操作系统实验——工作集模型下的内存管理模拟

实验要求现有若干进程,每个进程的页面访问顺序已经给出,并且这些进程交替地访问页面 设定一个工作集窗口Δ和内存页面数M 用一个数据结构维护每个进程的工作集,这个数据结构可以是数组或链表 根据进程访问页面的顺序,动态更新每个进程的工作集合和内存的空闲页面数 内存页面不足时,暂停某些进程。并在内存足够时,再将其唤醒 对给出的几个进程,利用工作集模型,进行内存的管理。 内存页面总数设为1000

2015-05-30 22:28:16 2726 3

原创 iOS开发——封装自己的下拉菜单

效果图思路1、图片的拉伸:UIImage *image = [UIImage imageNamed:@"popover_background"]; image = [image resizableImageWithCapInsets:UIEdgeInsetsMake(24, 0, 24, 0) resizingMode:UIImageResizingModeStretch];-res

2015-05-10 15:11:15 2369

原创 iOS开发——对象与字典互相转换

功能通过自定义Model基类,实现: 1、将json字典转换成对象,无需考虑属性名称和字典键(key)的名称的关系,即可以自定义映射关系。也支持字典中自定义对象的赋值。 2、一行代码将对象转换为json字典。使用让自定义的Model类继承自CYZBaseModel即可。然后根据需要选择重写或者调用的方法。 字典转对象: 1、如果字典中的键的名称与对象的属性名称一样,则不需要重新任何方法,或者

2015-04-30 18:29:07 9433

原创 操作系统实验——A Simple Custom Shell

实验要求√1、模拟Linux Shell的运行样子 √2、可执行Linux文件系统中的命令(外部命令),如:ls, mkdir…. √3、可执行自定义的内置Shell命令,如: chdir, clear, exit √4、支持命令后台运行,将尾部有&号的命令抛至后台执行 附加: (待)1、实现Shell对管道的支持,如支持 ls | grep “pipe” 等命令 (待)2、实现Shel

2015-04-30 13:39:07 1294 4

原创 Git学习笔记

1、git init创建版本库(repository)。创建于当前目录下,Mac上默认为隐藏文件,ls -a可以看到 2、git add 与git commit用于提交文件。分为两个过程的原因是git commit可以一次提交多个文件,所以可以先多次git add。git add实际上是把文件添加到暂存区stage(或者说index)中。而git commit是将暂存区中的内容提交到当前分支。

2015-04-28 22:52:02 971

原创 iOS开发——ARC小记

1,ARC是编译时特性而不是运行时特性,弱指针系统除外。弱指针系统是iOS5以后才能支持的,如果想适配iOS4及之前,那么不能使用weak。 2,对象被销毁的几种情况:无指针指向、超出作用域(局部变量所在方法的结束或者该对象仅有一实例变量所指,而所在类被dealloc) 3,强类型指针可以保持对象存活。默认实例变量、参数和局部变量都是强类型。 4,_

2015-03-30 22:24:30 966

原创 stringWithContentsOfURL:encoding:error方法返回nil

代码NSString *text = [NSString stringWithContentsOfURL:[NSURL urlWithString:@"http://www.xxxx.com"] encoding:NSUTF8StringEncoding error:&error];返回nil给text,error中的信息是:Error Domain=NSCocoaErrorDomain Code=

2015-03-28 23:42:17 4129

原创 SpriteBuilder Demo学习笔记

1、资源的auto-scaling。只需提供最高级别的resolution,SpriteBuilder会自动生成低级别的。SpriteBuilder默认是从4x(两倍于Retina屏)开始scaling,可以在File->Project Settings中设置为2x,然后点击publish。 2、Smart Sprite Sheets。自动生成精灵表单将所有资源放在一张大图上,只需一次读入到内存。

2015-03-06 22:42:33 1169

原创 迟来的再见——2014年总结

2.19日 大年初一 晚10:43 新的一年已经开始30多个小时了,我才打开电脑,趁着上一年的杂事还没有完全忘记,来这里给自己留一个回忆。 这一年对我而言是非常重要的年,是我人生的一个转折点。之前没有想过自己会走程序猿这条路,今天,眼前的电脑,后台的IDE,手边的茶水,都是由今年年初的选择决定的。现在,借此一账流水,把我今年的所做所为所想安置与此,供以后督促、留念。第一个游戏去年的现在,我应该是

2015-02-20 00:50:54 899

原创 iOS开发——仿Clear纯手势操作的UITableView

在Clear应用中,用户无需任何按钮,纯靠不同的手势就可以完成对ToDoItem的删除、完成、添加、移动。具体来说,功能上有左划删除,右划完成,点击编辑,下拉添加、捏合添加、长按移动。这里将这些功能实现并记录。

2015-02-19 22:32:03 2583 1

原创 iOS开发——圆形过渡动画

iOS开发——圆形过渡动画在一款新的app——Ping中,用户可以订阅自己感兴趣的主题,该应用会向用户推送相关的文章或段落。该应用在视图的切换时采用了一个非常炫酷的动画效果,如下图所示: 现在我们就来实现这一效果。总的来说,所用到的知识点有: 1、使用代理UIViewControllerAnimatedTransitioning实现控制器间的自定义动画 2、使用UIShapeLayer创建

2015-02-19 17:03:17 4290

翻译 iOS开发——创建你自己的Framework

在上一篇教程(中译版)中,你学到了怎么样创建一个可复用的圆形旋钮控件。然而你可能不清楚怎样让其他开发者更方便地去复用它。如果你想将你开发的控件与别人分享,一种方法是直接提供源代码文件。然而,这种方法并不是很优雅。它会暴露所有的实现细节,而这些实现你可能并不想开源出来。此外,开发者也可能并不想看到你的所有代码,因为他们可能仅仅希望将你的这份漂亮代码的一部分植入自己的应用中。另一种方法是将你的代码编译成静态库(library),让其他开发者添加到自己的项目中。然而,这需要你一并公布所有的公开的头文件,实

2015-01-27 17:39:58 3630 3

原创 Cocos2D教程:使用SpriteBuilder和Cocos2D 3.x开发横版动作游戏——Part 2

本文是“使用Cocos2D 3.x开发横版动作游戏”系列教程的第二篇,同时也是最后一篇。是对How To Make A Side-Scrolling Beat Em Up Game Like Scott Pilgrim with Cocos2D – Part 2的翻译,加上个人理解而成。最重要的是将文中所有代码转换为Cocos2D 3.x版本。众所周知,3.x与2.x的区别非常之大,在触摸机制、渲染机制等方面都与之前版本有了本质的区别。这里将本人摸索的结果加上,供大家参考。在上一篇教程中,我们已经加载了T

2015-01-24 21:59:17 2587

翻译 HealthKit教程 Swift版 Part2——锻炼信息

在我们系列教程的第一篇(中译版)中,你已经学到了使用HealthKit开发的基础:读写数据。在这第二篇,同时也是最后一篇中,你将会学到怎么样处理一种更复杂的数据类型:锻炼与健身的信息(Workout)

2015-01-23 11:15:10 1464

翻译 HealthKit开发教程Swift版:起步

HealthKit是iOS 8中的新的API,它提供了一种优雅的方式来获取和存储用户的健康数据。在本篇HealthKit教程中,你将会创建一个简单地记录用户信息的app。在此过程中,你会学到许多关于HealthKit的知识,例如:怎么样向用户请求允许来获得HealthKit的数据怎么样读取信息然后将其格式化展示在屏幕上怎么样将数据写回HealthKit。

2015-01-23 11:09:20 2425

原创 Cocos2D教程:使用SpriteBuilder和Cocos2D 3.x开发横版动作游戏——Part 1

本文是对教程How To Make A Side-Scrolling Beat Em Up Game Like Scott Pilgrim with Cocos2D – Part 1的部分翻译,加上个人理解而成,最重要的是将文中所有代码转换为Cocos2D 3.x版本。众所周知,3.x与2.x的区别非常之大,在触摸机制、渲染机制等方面都与之前版本有了本质的区别。这里将本人摸索的结果加上,供大家参考。通过本系列教程你可以学到:1、Cocos2D 3.x版本的工程创建以及编写2、TiledMap瓦片地图

2015-01-22 09:04:43 2366

翻译 识别Mac电脑上文件的命令行技巧

有时你会因一个文件而迷惑,这个文件可能是在你的文件夹中的一个未知类型的文件,它可能是你的父母或者客户给你的。不幸的是,你不知道它到底是一种什么样的文件。在Mac上文件是不带有拓展名的,所以可能并没有足够的信息来告诉你“Flongnozzle-2012”到底包含了什么内容。然而终端(Terminal)可以为你提供一些便利,你可以使用一些内嵌的命令行工具来帮助你鉴别文件。

2015-01-20 20:53:42 3048

原创 iOS开发——仿淘宝添加到购物车的动画效果实现

类似于淘宝一样,我们在写一些购物、订餐之类的app的时候,在用户选择购买或者加入购物车时可以添加一个商品飞到购物车中的动画效果,如下图所示:实现这个效果还是不算难的,但涉及的问题比较多,还是挺有学习价值的。主要面对的问题有以下几点1、cell中有button,如何获得该button,即如何知道用户点击的是哪一个button。2、坐标系的转换,这里频繁使用坐标系转换,主要原因是这里需要涉及三个视图——cell、tableView、view3、Bezier曲线的应用。下面我们一一来解决这些问题。正好

2015-01-01 15:17:36 7151

原创 iOS开发——在特定时间、任意时间做本地推送UILocalNotification

当需要发送一个本地推送的时候,我们需要为其设置fireTime即发送时间,网上好多示例代码只是简单地将一个类似10秒之后的时间设上去,但我们可能更需要在自定义或用户定义的某个特定的时间发送,其实这也不难,算是OC的知识点了——对常用类之时间类的运用。

2014-12-30 22:40:53 7167 2

原创 iOS开发——点击UITextField弹出UIDatePicker的协议实现方法

一个简单地方法是将自己的UIDatePicker直接赋给UITextField的inputView属性,这样还可以为其添加附加视图,并且比较方便。这里我们用另一种方法实现以下,也就是通过UITextField的协议来实现。这种方法的好处是给了我们更大的灵活性,可以对整个inputView从弹出到使用到结束都能做到自定义。还能熟悉对UITextField的协议的理解。

2014-12-30 10:41:07 4357

原创 二叉树的前序建立,前中后序遍历的非递归算法

二叉树的前序建立递归算法以及前中后序遍历的递归算法已经是人尽皆知了,递归算法也确实为代码的编写带来了很大的方便。然而,有时我们也确实需要它们的非递归算法。将递归算法转化为非递归算法可以帮助我们深入了解函数的调用与栈的原理。这里总结一下二叉树的这些重要的非递归算法。

2014-12-07 09:05:03 1323

原创 iOS开发——多级非互斥TableView的实现

有时我们会需要用到类似QQ好友列表那样可展开的列表,无奈iOS并没有像Android那样给我们提供。只能自己实现了。其实自己封装也好,自由度高,更灵活。

2014-12-04 00:14:53 2071 1

原创 ios开发——滑动星型评分控件的实现

在App Store或者其他一些应用中我们可以通过点击或滑动星星来给应用评分,效果图如下现在我们来实现这一功能。

2014-12-03 23:08:47 3380

原创 ios开发——长按按出两个UIAlertView的解决办法

有时我们希望通过长按手势来删除一些数据,这是一个比较好的用户体验是在删除之前弹出一个UIAlertView来提醒用户进行二次确认。然而,这样会出现一个bug:你定义的UIAlertView会弹出两次,如下图

2014-11-27 10:34:49 1153

原创 iOS开发——保存自定义对象数组、字典到文件

在ios中,要保存普通的数组到文件可以直接调用-wirteToFile:atomically:方法写入,并且可以通过NSArray的方法-initWithContentOfFile:来读文件初始化数组。然而,当要保存的数组中存储的数据对象是自定义对象时,就得通过对象归档的方法来实现了

2014-11-25 21:42:25 7238

原创 ios开发——解决UICollectionView的cell间距与设置不符问题

在用UICollectionView展示数据时,有时我们希望将cell的间距调成一个我们想要的值,但往往不得结果。这里我们来看一个不错的方法

2014-11-24 19:31:20 14907 2

原创 ios开发——UICollectionView初阶

UICollectionView是一种新的数据展示视图

2014-11-23 10:06:53 3268

原创 ios开发——UIPanGestureRecognizer判定方向

今天在用这个导航栏的时候发现一个问题,UIPanGestureRecognizer是任何滑动手势都会辨别,它不像UISwipeGestureRecognizer一样有方向.这样在有些情况下会产生问题。

2014-11-21 21:23:07 6113

原创 UVa 10213 How Many Pieces of Land?

Problem GHow Many Pieces of Land?Input: Standard InputOutput: Standard OutputTime Limit: 3 seconds You are given an elliptical shaped land and you are asked to choose n arbitrary point

2014-11-07 17:20:01 1060

原创 UVa 143 Orchard Trees

Orchard TreesAn Orchardist has planted an orchard in a rectangle with trees uniformly spaced in both directions. Thus the trees form a rectangular grid and we can consider the

2014-11-06 17:08:41 1213

原创 UVa 264 Count on Cantor

Count on CantorOne of the famous proofs of modern mathematics is Georg Cantor's demonstration that the set of rational numbers is enumerable. The proof works by using an explicit

2014-11-06 07:43:39 1049

原创 UVa 160 Factors and Factorials

Count on Cantor One of the famous proofs of modern mathematics is Georg Cantor's demonstration that the set of rational numbers is enumerable. The proof works by using an explicit enumeration of rat

2014-11-05 23:14:49 1053

原创 UVa 642 Word Amalgamation

In millions of newspapers across the United States there is a word game called Jumble. The object of this game is to solve a riddle, but in order to find the letters that appear in the answer it is ne

2014-11-04 18:44:41 815

原创 UVa 623 500!

In these days you can more and more often happen to see programs which perform some useful calculations being executed rather then trivial screen savers. Some of them check the system message queue an

2014-11-03 17:40:57 867

原创 MacOX以及XCode下文件结束符(EOF)的输入

在Windows下我们可以通过ctrl+Z来输入文件结束符(EOF),而在MacOS下,EOF的z

2014-11-02 09:32:20 16316 6

原创 最长回文子串

题目:输入一个字符串,求出其中最长的回文子串。子串的含义是:在原串中连续出现的字符串片段。hu

2014-11-02 07:57:17 975

原创 iOS开发——使用NSInputStream逐行读入大文件

有时我们在做读取文件操作时,可能直接将文件一次性读入内存中然后按行分割。这样对于较小的文件而言还好,但是当文件比较大的时候就不是那么理想了。所以我们可以采用惰性读取(lazily read)的方法,逐行读入文件,同时可以在后台处理每行数据,这样就不会影响用户操作了。使用NSInputStream就可以实现这样的功能。

2014-10-27 22:31:21 8909

原创 ios设置delegate后crash的问题

今天在写一个inputStream逐行读取文件内容时遇到一个问题,就是设置好inputStream的delegate为self(自己封装的类)后运行直接crash了。报的错误正是

2014-10-27 21:46:34 2130

Cocos2D 3.x 横版动作游戏教程 Part2

本资源是博客《使用SpriteBuilder和Cocos2D 3.x开发横版动作游戏——Part 2》的工程代码,里面有实现了人物与视中心的移动、攻击与被攻击检测、人工智能、音乐播放等的横版动作游戏的完整源码

2015-01-24

Cocos2D 3.x 横版动作游戏教程 Part1

本资源是博客《使用SpriteBuilder和Cocos2D 3.x开发横版动作游戏——Part 1》的工程代码,里面有实现了场景、人物、动作、虚拟摇杆的横版动作游戏的第一部分源码。

2015-01-22

iOS非互斥多级列表

iOS版本的多级列表,非互斥,可以单独展开和关闭。支持动画

2014-12-04

iOS滑动评分控件

iOS的滑动评分控件,支持动画、滑动、非整型评分。

2014-12-04

ios侧边导航栏

仿新版QQ侧边导航栏的实现学习,带详细注释。

2014-09-21

封装sqlite操作

对ios的sqlite3数据库操作进行简单地封装

2014-09-18

Head First 栈和队列

参考博文《Head First 栈和队列》,对其中提到的各种栈与队列及应用进行了简单实现

2014-09-17

VIP账户管理系统

参考博客《Head First 线性表》,本资源为线性表的项目练习,涵盖了数据结构建立、链表的基本操作、文件的基本操作等基础功能,供一起学习数据结构交流用。

2014-09-15

Head First 线性表

参考我的博客《HeadFirst线性表》,简单实现了单链表、双向联表、循环链表、静态链表.供新手学习参考。

2014-09-15

空空如也

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

TA关注的人

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