祖国您好!

注: 基于火山安卓平台举例

[上一章]

 

前面阐述了火山面向对象的应用机制,现在我们基于火山安卓平台来开发一个显示“祖国您好!”的程序。

选择“文件->新建->项目”菜单项:

在左侧树形框中选择“空白安卓程序”项目,在上部选择“空窗口”,在“项目名称”编辑框中输入项目的名称(随意),在“所处位置”编辑框中输入新建解决方案所处的文件目录(随意),在“解决方案名称”编辑框中输入所新建解决方案的名称(随意),然后点击确定新建一个解决方案

在此解释一下火山的“项目”和“解决方案”概念:

项目:记录用作生成目的程序(安卓平台下是“.APK”)的所有火山源代码程序的集合,并同时提供相关的编译时设置信息。

解决方案:记录一序列的相关项目集合,用作开发者将相关项目归类集中管理。

即,按被集合顺序:“火山源代码程序”->“项目”->“解决方案

前面新建解决方案时同时指定新建了一个安卓程序项目,该项目内创建了一个默认火山源代码程序文件:

鼠标右键单击“启动类”的定义行:

选择所弹出菜单中的“设计启动类的界面布局”菜单项:

注意:

1、名为“启动类”的类在整个项目中只能存在一个,用作标记用户程序的启动位置;

2、只有窗口类(直接或间接基础类为“窗口”的类)才能设计其界面布局。

以下为“启动类”的界面布局设计器界面:

选择左侧工具箱中的“按钮”组件,将其拖动到设计区域内:

选择设计区域内的“按钮1”,然后在右侧属性表中的“文本”属性内填入“我的按钮”文本:

点击“确认”按钮返回到程序设计界面,此时可以发现界面设计器自动在“启动类”中插入了一个数据类型为“按钮”名称为“按钮1”的成员变量,其具有一个名为“安卓.窗口.布局”属性,在此属性的属性值中记录了所有在界面设计器中对此按钮的设计内容。由于这些内容普通用户无需了解,所以其属性值默认处于“隐藏”状态:

火山遵循“程序与数据集中”的原则,这样做有以下好处:

1、便于程序与其相关数据的集中维护和查找;

2、只有被真实使用到的程序数据才会被编译到结果中去。假设有一个系统类方法里面使用了一个图片资源(譬如“提示信息框”),那么只有当用户程序确实使用了该方法,该图片资源才会被加入到编译结果中去。

根据此原则,火山并没有将窗口类的界面布局数据与其程序分开存放,而是全部存放在窗口类自身的源代码中。在安卓平台中,具体就在窗口类及其中的“窗口组件类”(直接/间接基础类为“窗口组件”的类)成员变量的“安卓.窗口.布局”属性值中。

所以以上代码你不通过界面设计器自行手工录入也是可以的,不过比较繁琐。

按钮添加完毕后,我们现在要来接收此按钮的被单击事件,用作在按钮被单击时显示“祖国您好!”文本。

根据我们在前面所讲过的方法,右键单击“按钮1”成员变量定义行,然后选择所弹出菜单中的“添加按钮1的事件接收方法”菜单项,选择其中的“按钮_被单击”事件:

然后点击“添加”按钮,将在“启动类”中自动插入如下“事件接收成员方法”:

在“返回 (0)”语句前按下“Insert”快捷键插入一个空语句行,然后输入以下代码:

提示信息框 ("祖国您好!")

还记得首拼输入法吗?不用敲汉字输入“提示信息框”那么麻烦,直接输入此文本的首拼字母“tsxxk”然后选择对应列表项就可以了(程序中所需要输入的其它中文文本都可以这样输入)。

至此,我们第一个程序开发完毕。在运行程序之前,必须首先做如下准备工作(以后不再累述):

1、电脑上必须已经安装了JDK和安卓ADK软件开发包,下面是它们的最新下载地址:

JDKhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

ADKhttps://developer.android.com/studio/index.html (下载后面的命令行工具即可)

下载安装完毕后,请执行菜单项“工具->选项->安卓管理器->全局”,然后填写其中的对应选项。也可以不填写,此时系统将根据相关环境变量自动搜寻。

如果不愿意下载前面的内容,您也可以选择下载我们整合好的相关JDK和ADK包,然后直接解压到火山平台安装目录的“plugins\vprj_android”子目录下即可(此时请保持上图箭头所指向的属性项为空)。

2、强烈推荐直接使用安卓真机测试,速度快而且直接面对真实应用环境。此前需要先启用测试用安卓手机的USB调试模式(请查询该手机的用户手册),在电脑上安装该手机的驱动程序(手机厂商提供或使用通用驱动程序),然后使用USB连线将其连接到电脑,最后在手机上授权当前电脑对该手机的USB调试许可即可。
 

运行前的准备工作做完后,按下“F5”快捷键启动程序然后单击“我的按钮”看效果吧:

具体例程请参见系统安装目录的“samples\vprj_android\samples.vsln”解决方案中的“教程相关\祖国您好”项目