Category: 计算机技术

从Windows到Mac的快速使用入门

本文针对有Windows使用经验,需要快速了解Mac使用的开发人员。 Finder和资源管理器 看到一个崭新的Mac环境,对于有windows使用经验的人来说,可能第一个问题是资源管理器在哪里。 和windows资源管理器对应的Mac工具,叫Finder。 如果使用的是Mac OSX 10.7 Lion的话,应该就在这里: 可以点击左侧的菜单项,到相应的目录下,比如桌面,它的概念和windows的桌面是一样的:    发送文章为PDF   

星期一 一月 30th, 2012 in 计算机技术 | No Comments »

从git服务器获取只读项目数据

从git服务器获取和同步只读的项目数据。比如说,通过github,获取人家的项目数据,而且还要和它保持同步,需要以下操作。 使用命令行 这是最简单的方式了。只需安装git。拿我现在写的一个发布在github上的项目举例,见:https://github.com/MarshalW/WebBook/tree/gh-pages 可以通过如下命名clone项目(相当于svn的checkout)数据: git clone git://github.com/MarshalW/WebBook.git git支持的几种协议,在github中都有支持,其中git一般只用来读取,http可以读写(但在这里如果你不是该项目的成员,只能读取),以及ssh方式(可读写)。 如果需要更新本地数据,可执行: git pull 如果想切换服务器端的分支,比如上面的项目,在服务器端有master和gh-pages两个分支,默认clone下来的是master,如想切换到gh-pages,可执行: git checkout –track origin/gh-pages 使用EGit 如果你习惯了Java开发环境,或许需要使用到Eclipse下的egit插件。    发送文章为PDF   

星期日 一月 29th, 2012 in 计算机技术 | No Comments »

使用CSS3硬件加速的拖动小示例

示例如下图:   可直接访问:http://easymorse.googlecode.com/svn/tags/WebBook-0.2/test.html,需要注意只能跑在有webkit浏览器的触摸设备上。 为什么会抖动 在iPad上,如果用传统的改变html元素的左上顶点坐标(left、top),会有可被用户察觉的抖动现象。 这是因为,浏览器不确定是否要使用GPU硬件加速,也许这个操作只是移动一个元素到某个位置。 这种指定顶点的做法,在鼠标操作设备上不会出现抖动现象,是因为鼠标的轨迹是连续的。而触摸设备的手指移动是离散的。 另外,浏览器是假定可用可不用硬件加速的地方,就不用硬件加速,这是因为,对于移动设备来说,硬件加速更消耗电池。 使用CSS3的translate,浏览器将使用硬件加速,手指移动的坐标离散量,会自动形成动画,这样看起来就不会抖动了。 另外,translate的另一个好处是和css布局无关,坐标是针对元素自己的,也就是从(0,0)开始。    发送文章为PDF   

星期四 一月 26th, 2012 in 计算机技术 | No Comments »

iOS5的自定义容器控制器特性简单使用

iOS5支持开发自定义的容器控制器。比如下面这样: 在本示例中,屏幕的上半部分是嵌套在根控制器中的导航控制器(UINavigationController)。即:    发送文章为PDF   

星期四 一月 12th, 2012 in 计算机技术 | No Comments »

又一个iOS屏幕切换的示例

在iOS屏幕变换的处理,已经提到了通过通知来处理屏幕视图的自动翻转。 这里再写一个。 蓝色的子视图,在翻转的情况下触发界面大小的调整。    发送文章为PDF   

星期三 一月 11th, 2012 in 计算机技术 | No Comments »

iOS中的设计模式:target-action

Target-action,目标-动作模式。在iOS界面开发中十分常用。 拿使用ARC编写简单的Xcode项目中的示例来说:    发送文章为PDF   

星期一 一月 9th, 2012 in 计算机技术 | No Comments »

Mac切换应用窗口

Mac下的应用,如果想切换程序窗口,有很多办法,而且比windows应该多和方便。 这里总结一下,如果只是应用的窗口切换,可以快捷键:command+tab 如果是相同应用的多个窗口,比如safari,你开了两个窗口,可以通过菜单来切换:    发送文章为PDF   

星期日 一月 8th, 2012 in 计算机技术 | No Comments »

使用NSCondition实现生产者消费者问题

使用NSCondition,类似Java中的wait,notify机制,可以实现多线程的同步,即,可实现生产者消费者问题。 基本思路是,首先要创建公用的NSCondition实例。然后: 消费者取得锁,取产品,如果没有,则wait,这时会释放锁,直到有线程唤醒它去消费产品; 生产者制造产品,首先也是要取得锁,然后生产,再发signal,语义等同Java的notify,这样可唤醒wait的消费者。 示例代码如下:    发送文章为PDF   

星期日 一月 8th, 2012 in 计算机技术 | No Comments »

使用runloop阻塞线程的正确写法

runloop可以阻塞线程,等待其他线程执行后再执行。 比如: @implementation ViewController{     BOOL end; } … – (void)viewDidLoad {     [super viewDidLoad];      NSLog(@”start new thread …”);     [NSThread detachNewThreadSelector:@selector(runOnNewThread) toTarget:self withObject:nil];         while (!end) {         NSLog(@”runloop…”);         [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];         NSLog(@”runloop end.”); [...]

星期日 一月 8th, 2012 in 计算机技术 | No Comments »

使用ARC编写简单的Xcode项目

使用ARC编写全新的项目是很容易的。下面用一个简单的项目来说明使用方法。 先看写好后的样子:      代码很简单。有两个视图,左边视图提交切换到右边视图,右边视图点返回回到左边视图。 首先是创建项目,使用创建项目向导,这里创建一个单视图应用(Single View Application)。 日志引用iOS中的设计模式:target-action    发送文章为PDF   

星期四 一月 5th, 2012 in 计算机技术 | No Comments »