Corona中文站

强大、易学的跨平台(iOS/Android)开发框架。QQ群1:74390406(满) 群2:221929599

导航

五分钟学会Corona(十三) - Tables and Arrays
Tables in Lua implement associative arrays. That is, they can be indexed not just with numbers, but also with strings or any other value of the language, except nil.

This library provides generic functions for table manipulation. It provides all its functions inside the table table.
...
五分钟学会Corona(十二) - 字符串处理
这个库提供了字符串处理的通用函数,例如查找和提取子字符串,以及模式匹配。当在lua中索引一个字符串时,第一个字符是从1开始的(而不象C那样从0开始)。索引号可以是附属,用来从后向前索引。例如,最后一个字符的位置就是-1,以此类推。

这个string库把所有的函数放在一个table(string)里。它允许你为字符串设置元表,__index字段指向string table。因此,你可以以面向对象的风格来使用字符串函数。例如,string.byte(s, i)也可以写成 s:byte(i)。

这个string库假定为一字节字符编码。
...
五分钟学会Corona(十一) - Event Sounds
media库提供了访问设备的多媒体特性的能力。

音频播放

media库提供了控制播放的支持:

• event sounds: 完整播放的短小的音频

• extended sounds: 可能更长,并且再播放期间可以餐厅,但是一次只能打开一个


Event Sounds

如果你有再1-3秒的短小的音频,你就应该使用event sound APIs. 下面就是一个每秒播放一声beep的节拍器的例子。

local soundID = media.newEventSound( "beep.caf" )
...
五分钟学会Corona(十) - 视频
视频回放,其实是依赖于设备指定的弹出式媒体播放器。在视频播放期间,视频播放器的界面会弹出来。

很重要的一件事是, media.playVideo是异步的。一旦代码块退出,应用程序将会被挂起,直到视频播放完成。

因此,如果媒体播放器退出时,你想要得到通知的话(例如,视频播放完毕或者用户取消了视频播放),你应该注册一个listener。

local onComplete = function(event)

print( "video session ended" )

end

media.playVideo( "Movie.m4v", true, onComplete )
...
五分钟学会Corona(九) - 音频系统
一般介绍

Corona音频系统让你可以访问高级OpenAL特性。最终它将替换Corona Event Sound系统。然而,目前它还是在计划中。请阅读这一节中对android限制,文件格式以及性能提示的重要信息。

Android: 音频文件名限制

在Android上,文件名相同但扩展名不同的文件在编译期,被映射为同一个资源名称。现在这个不优雅的错误,会携带一个连接错误:( corona.get)message。唯一的解决办法,就是修改文件名。例如,AudioPlayer范例app使用一个命名方案,简单的把扩展名合并到文件名中:
...
五分钟学会Corona(八) - Sprite高级动画
神马是Sprite Sheets?

Sprite sheet是把多个帧打包在一个文本图片中,来实现2D动画效果。这提供了对纹理内存更加高效的利用,在移动设备上内存是非常有限的,并且也可以最小化加载时间。

Corona支持两种sprite sheet:1、动画帧的大小和位置都一致;2、动画帧的大小和位置都不一致。在前一种情况,你只要向Corona提供在sprite sheet图片文件中每一帧的宽度和高度,就可以创建sprite sheet的新的内部表现形式。下面这张图片(来自 JungleScene 范例工程),是使用规格统一的帧的sprite sheet的一个例子。
...
五分钟学会Corona(七) - 基本运动与变换
关于Corona SDK最强大的一件事,就是任何display object,都可以动画之。这足以证明Corona的图像模型的超级灵活性。

动画允许你创建一个视觉丰富,引人入胜的使用体验。动画是通过生成一个帧序列来完成的,在帧到帧之间平滑的演变。术语“补间”(简称 inbetween)就是说这种中间帧的生成过程的。它通常用来略称,一个对象在动画期间一个属性的改变,比如位置补间。

变换

transition允许你很容易的只用一行代码来创建动画,这通过允许你补间一个display object的一个或多个属性来实现。例如你可以淡出一个display object,通过补间其alpha属性(这个alpha属性从1.0到0)。
...
五分钟学会Corona(六) - Bitmap Mask
Corona的位图遮照特性,允许你用一个image作为一个位图,将其应用到其他display object上。Corona把该image内部转成灰度图;黑色表示屏蔽,白色表示没有;一个遮照可以有自己的可以被间补的变换。通过被遮照的display object可以访问到这些属性。

一个位图遮照,可以被应用到其他display object上,但是有的对象是不会被遮照的,这包括text对象和本地的display object。

注意

当一个image被作为遮照加载后,就不能被当作image对象加载,反之亦然。规则就是每个文件一个纹理,因为纹理缓存中必须标明一个文件,要么是一个遮照,要么是一个RGBA纹理。
...
五分钟学会Corona(五) - DisplayObject和Stage
所有发生在屏幕上的绘制活动,都通过创建DisplayObject来完成。实际上,任何在屏幕上显示的东西,都是一个DisplayObject的实例。

创建Display Objects

实际上,你并不直接创建这些对象。而是,你创建一些特定类型的DisplayObject,例如 rectangles, circles, images, text, groups, 等等。

这些对象都是第一类。你可以修改他们的位置、旋转他们、启用动画,把他们当作按钮,等。

所有这些对象共有一些常规的属性和方法,在Corona SDK语言和API参考的 Display Objects 一章里可以看到。
...
五分钟学会Corona(四) - Images, Shapes, 和Text
关于Display Object

所有在屏幕上发生的绘制,都是通过创建DisplayObject来完成的。任何显示在屏幕上的东西,都是DisplayObject的实例。但你不能直接创建display object,而是直接创建display object的某种特例,例如rect、circle,image,text等。

这些对象都是第一类型。你可用它们产生动画,把它们变成按钮,等等。

你通过调用一个特定的函数来创建display object。这显式地把你创建的对象添加到其他对象的上面。DisplayObject是被设计用来作为公共功能的协议,所以你不能显示的创建一个Display Object对象本身。
...
«5678910111213141516171819»

日历

<< 2014-10 >>

Sun

Mon

Tue

Wed

Thu

Fri

Sat

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

最近发表

Copyright 2011-2015 BuildApp.Net. All Rights Reserved.