corona的几个重要概念:
1.在corona里不用new来实例化,而是通过各式各样的套件所提供的功能来实现。
2.所有系统提供的都以套件的方式来调用,而绘图系统的套件名称是display。这是一个外来的程序库,理论上调用requre来载入(等同于Android的inport和C#的using),不过display是系统其中一个内定会自动载入的套件。载入的语法如下:
myScrollbg = requre "scrollbg"
在这一行的声明之后,就可以使用myScrollbg来操作程序库了,display也是用同样的方法来操作绘图程序库。
3.function也是lua里基本的结构之一,其观念跟一般程序语言的观念是一样的。display.newText就是调用display程序库中的newText function。
4.lua物件一样有所谓的属性跟方法,像上例中的textObject.x就是用来设定这个文字物件的x轴位置。而方法调用使用的语法是用textObject:setTextColor中的":"来表示的。所以当你要使用的是套件的function时,用的是".",而要调用物件的方法时,要用":"。
5.每一行的程序结尾可以不需要任何符号或加";",但这不表示你不能像JAVA/C#那样随意断行,这是可以的,它是按语法结构分析的,所以断行只要不破坏掉原本的识别字就行了。
在corona的绘图系统里有几个基本的重要类别,其中最上层最基础的是DisplayObject。这是一个你写程序时用不到,但是它是所有其他绘图组件的先祖。所以DisplayObject提供了一些基本物件都需要的方法和属性。
而继承自DisplayObject的类别主要有4种:Image,Shape,Text和Group。
Image用来显示一张图在画面上,它可以是PNG或JPG;
Shape用来在画面上显示方形,椭圆行,圆形,线条/路径,或多边形;
Text用来在画面上显示文字,系统内建一种字体,它也可以让开发者自建一种ttf的字体;
Group是一个容器的概念,它是被用来群组数个DisplayObject,Group里有自己的坐标系统,所以被加入Group的每个物件都得使用Group的坐标系统。
Lua uses three kinds of variables: global, local, and table fields.
For the relational operators, such as ==, <=, >=, ~=, Lua copmpares the values to their types. Numbers and strings are compared in the usual way. Tables and functions are compared by reference, as long as two such values are considered equal only if they are the same object.
The string concatenation operator in Lua is denoted by two dots.. .
The length operator #, measures the length of a string. The length of a string is simply the number of characters in it.
Quoting Strings:
"This is my string."
'She said, "Hello!" '
[[ Is it 'this' or "that?" ]]