Cocoa China 苹果开发中文站

苹果Mac OS X开发 iPhone开发 Cocoa以及Cocoa Touch

推荐使用Safari浏览器阅读本站

Core Animation

Cocoachina教学:Core Animation入门

今天,Cocoachina会开始一个Core Animation的入门教学,和大家共同学习Core Animation的使用。本站介绍过不少Core Animation的文章,这篇文章是一个入门教学,从头帮助你了解Core Animation以及如何入门。

Core Animation是苹果在Leopard中加入的新API,主要用于利用显卡硬件制作动态的用户界面。同时,在iPhone SDK中也支持这种API。在Leopard和iPhone中,你会看到苹果大量使用这种很酷的效果,比如iTunes/iPhone的CoverFlow效果:

 

Core Animation的好处

Core Animation的最大好处是可以帮助Mac或者iPhone的开发者减少代码量。因为如果你想用Core Image或者Open GL实现界面的动画特效,其实也是可以的,主要是非常麻烦。而用Core Animation可以极大简化开发难度和减少代码量。

点击这里阅读全文 »

新手Core Animation教学:窗口淡入淡出特效

Cocoachina介绍Core Animation相关的内容也蛮久的了,这次为大家奉献一个简单点的小程序,但是相信你一定用得着:在程序启动时,使用窗口淡入特效将窗口显示出来;在程序关闭或者窗口关闭时,使用窗口淡出效果将窗口隐藏。

当然,使用这个例子的特效的前提是你的程序是专门为Leopard开发的,如果想在Tiger实现,可能要麻烦点,因为例子中我们使用Core Animation去实现这个特效。

由于这个例子非常简单,而且比较实用,很适合初学者阅读,看看怎么做的然后在你自己的程序中加入这种很酷的效果吧。

点击这里阅读全文 »

在我们使用Core Animation的过程中,可能会遇到一个问题,就是我们可以用简单的代码使一个view进行动画的移动,但是如何在view移动的过程中获取它的位置呢?下文将帮你解答这个问题。

点击这里阅读全文 »

Core Animation教学:关键桢动画

Leopard中最新的Core Animation技术可以让开发者简单地开发超酷的用户界面。想想iPhone为什么这么受欢迎,因为它革命性的用户界面和用户体验,可以让人爱不释手。在本站之前的文章里,我们介绍过一些关于Core Animation开发方面的文章,但是从来没有介绍过关于关键桢动画方面的内容。

本文通过一个例子讲解Core Animation关键桢动画方面的基本知识,例子很清晰易懂。建议您有一定Cocoa知识以及掌握初步的Core Animation概念,那么通过本文您会了解更多关于Core Animation的知识。

点击这里阅读全文 »

 

iTunes提供了新的CoverFlow效果,其中自带了一个动画形式的滚动条,完全不同于以往苹果的滚动条形式。你也可以在Leopard的Finder里找到这种动画形式的滚动条。

本文介绍如何创建这种滚动条,以便你可以在自己建立的CALayer中方便地添加。这篇文章的例子还可以做为很好的Core Animation教学供你参考。

点击这里阅读全文 »

Core Animation教学:如何使用CALayer的遮罩(mask)

在Core Animation的层中使用遮罩使图片的某些部分变为透明是非常简单的事情,你只需要建立一个遮罩层,设置为另一个层的mask即可。相关信息在本站的 Core Animation:用最少代码画出照片倒影效果 中有所提及。只是之前例子中的遮罩是使用Photoshop进行创建的。

本文通过一个简单例子,直接创建一个CGImageRef图片做为遮罩,继续讲解如何在Core Animation中使用遮罩。

点击这里阅读全文 »

一些源代码资源下载

今天介绍一些比较有用的源代码,你既可以把它们做为例子学习,也可以直接在你的项目里使用。

这些例子包括一个Core Animation文档中提及的动画菜单,一个高级点的Core Animation例子,一个Http服务器的例子以及一个如何设置“偏好设置”窗口的例子。希望对大家有用。

 

点击这里阅读全文 »

如何在mouseUP事件中检测鼠标选中的CALayer

如果你看过Core Animation,一定希望自己制作动感十足的菜单,CocoaChina带给你如何实现这种菜单的方法。本文主要介绍如何通过点击选中某一个特定菜单项的方法,如果你希望对Core Animation涉及多一点,相信这篇文章会对你有用。

假定我们通过以下层次结构创建了一系列CALayer,这些CALayer实现了一个菜单结构:

rootLayer -> scrollLayer -> menuLayer -> n个菜单项Layer
 
那么我们希望通过鼠标点中对某一个菜单项进行选择,基本思路是这样的:
 
由于菜单项内可能有多个选项,而且可能有滚动的情况,因此需要通过-hitTest:方法获取点中的层。
 
请仔细阅读本文获取更多内容。

点击这里阅读全文 »

Core Animation教学:Dashboard特效

 

 

作者:Matt Long

 

在我们尝试演示Core Animation通过不同方式用法的时候,我们注意到,试着重现你在OS X本身看到的一些特效也是一种挑战。上一篇文章中我们讲解了如何制作窗口震动特效,这次,我们准备演示一些Dashboard的特效。

点击这里阅读全文 »

Core Animation教学:窗口震动特效

又是一篇cimgf的好文,爱死你们了。

原作者:Matt Long 

原文地址:http://www.cimgf.com/2008/02/27/core-animation-tutorial-window-shake-effect/

 

Core Animation对Cocoa开发者来说真的是个很强悍的玩意儿,几乎所有人都在关注它,我们当然也不会例外。学习做出一些简单的渐变或者窗口漫天飘的效果,其实并不算什么;而真能够做出复杂一些的效果,那就是一种挑战了。

 

我们想试着开发一些你可能已经在Leopard中看到过的特效,这些例子其实很简单。这些效果在操作系统出现时,他们可能不是使用Core Animation编写的。我们在这里不管操作系统的开发人员是如何实现的,而用Core Animation把它们实现出来。先挑战什么呢?震动一个登录窗口。

 

 

点击这里阅读全文 »

Core Animation:用最少代码画出照片倒影效果

 

iTunes的CoverFlow照片倒影效果很酷,因为它使一幅简单的照片在界面上看起来很真实。

那么如何用Core Animation的CALayer做出这种效果,以便增加动画的处理,这就是下文要研究的课题。

在这个例子里,我们做了三个CALayer,分别叫做imgLayer,用于显示图片;reflectionLayer,用于显示倒影和shadowLayer,做为倒影的遮罩。这个例子假设您会使用Photoshop进行简单的图片处理。

 

 

点击这里阅读全文 »


 

我这两天有时候会想做一个向导对话框(就是那种上一步、下一步可以前进后退的玩意)。琢磨了一下,如果用Core Animation做出动画效果,那可就更好玩了。

基本上,这个例子做不了任何事。就是给你看看,一个窗口,里面有两个按钮:上一步、下一步,这样你可以通过前进后退的方式修改一些设置之类的东西。我做了几个NSView放在里面,它们按照不同顺序显示出来,就是这么个玩意。(就像安装向导一样,但是不同的是,我们要做的是一个有动画效果的向导对话框)

点击这里阅读全文 »

最新讨论