`
jhs470ai
  • 浏览: 13195 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

bada学习之HelloWorld篇

 
阅读更多

bada学习之HelloWorld篇
2010年09月10日
  时间:2010-07-28 14:56作者:刘皓   首先,要下载bada的SDK和IDE的压缩包,然后安装,我的IDE和SDK的版本都是1.0.0a3的,安装前先装SDK,然后安装IDE,一路Next就Ok。至于SDK和IDE的下载,地址:http://developer.bada.com,下载过程可能要麻烦些,因为要注册,注册以后还要成为三星的合作伙伴,个人的话下载起来确实比较麻烦,注册是必须的,因为如果你要开发自己的Application的话,你必须注册,然后下载一个配置文件,这个配置文件会在你新建工程的时候会用到,没有这个配置文件,我们就无法新建工程并开发自己的App,稍后会讲到。
  当然大部分的内容,我们可以参考其自带的帮助文件,可以从bada-IDE的菜单栏中打开,如下
  
  基本开发过程中如果要查资料就可以从这里查看。要试着自己建立自己的HelloWorld,可以参考里面的Developer Guide的HelloWorld篇,但是要注意,里面讲的内容如果你直接照搬不误的话,很可能就是错误的,根本运行不出结果,会有错误,下面会有讲到。
  SDK和IDE安装好以后,下面开始bada的HelloWorld篇。
  先看bada app的开发流程:
  
  这里面包含很重要的信息(比如开发自己的app前下载自己的配置文件,即manifest.xml)己要看明白,我就不赘述。
  首先开始菜单→bada IDE→badaIDE,第一次打开会显示welcom界面,如下:
  
  显然又是基于Eclipse的IDE。这里可以点击Developer Guide查看入门。
  关闭这个页面。
  点击File->new->bada application project新建一个工程:
  
  我将工程名字命名为HelloApp,自选。
  工程类型这里我们选择第二个,即bada Application(Hello World),为什么不选第一个?刚刚说过了,如果你要开发自己的Application,你必须到官网注册,下载自己的App的配置文件,而这里的bada Application(Hello World)类型带有一个默认的,演示版的配置文件,不用去官网下载,所以我们选择第二个,点击next,选择SDK的位置,如果安装了多个SDK,可以在这里选择不同版本,点击next,这一部就是选择配置文件的界面了:
  
  继续一路next或者直接finish。
  完成以后可以看到界面中工程的结构:
  工程文件和资源视图
  建好以后,不能直接运行,要先Build 工程,让我非常纳闷的是这时候如果你点击运行,他不会自动的Build工程,右击工程,选择Build,ok
  建好以后,我们就可以直接点击运行按钮运行,
  
  选择第一项,点击ok运行
  之后模拟器运行,bada的模拟器初始化非常快,比Windows Mobile, Symbian, Android快多了。
  之后看到模拟器
  让人郁闷的界面,之后会看到HelloWorld的运行,如上图2所示。
  接下来我们用资源文件为其添加一个Form的窗体,并添加几个控件,大体体验下bada app的开发体验。
  首先我们看一下其UI的基本内容,层次结构:
  
  如图所示,一个App只有一个Frame,但是一个Frame之上有可以多个form,From上又有控件,在程序中我们可以设置当前的form。form左下方和右下方有两个soft key,可是设置显示图片或者文字。
  当我们双击工程文件的事后,在Project视图的下方就会显示对应的resource视图。在这里,我们可以添加一个
  首先点击Resource视图中的From,点击Insert Resource,
  然后的编辑器视图就会显示Form的编辑网格。同时Resource视图现实Form的Id,在编辑网格中双击,下方区域就是现实Form的属性。界面如图
  
  然后我们可以试着在其中拖入几个控件,不是拖入,是点击相应的右侧控件,然后将鼠标移动到编辑区,点击一下,在窗体中添加控件。如图,添加几个控件:
  
  这时候,如果直接运行,肯定是看不到Form窗体的
  我们还要为我们的工程添加Frame,然后frame之上添加From。
  首先,我们打开inc文件夹下的HelloApp.h
  然后,为类添加private变量: class HelloApp : public Application { private: Frame * helloFrame; Form * topForm; …}
  然后打开src文件夹下的HelloApp.cpp
  在OnAppInitializing() 函数中,添加如下代码:
  bool
  HelloApp::OnAppInitializing(AppRegistry& appRegistry)
  {
  helloFrame = new Frame();
  topForm = new Form();
  helloFrame->Construct();
  topForm->Construct( "IDF_FORM1″ );
  helloFrame->AddControl( *topForm );
  helloFrame->SetCurrentForm( *topForm );
  return true;
  }
  然后在OnForeground() 函数中,注释或者删除掉原先所有的代码,添加如下代码:
  helloFrame->Draw();
  helloFrame->Show();
  在OnAppTerminating()函数中,添加如下代码:
  if( topForm )
  delete topForm;
  if( helloFrame )
  delete topForm;
  保存。
  注意这时候直接运行工程,可能看不到你想要的From,原因是Form资源文件并没有保存,当你看到资源视图中Form前面有*号的时候,表示资源文件并没有保存,而且他不会自动保存(常识,带*号的选项卡一般都表示没有保存)。
  
  这时,你要右击form选择,Save All Resources
  
  然后Build工程,并运行。
  看到如图所示。要退出模拟器,右击模拟器,选择close.
  到此为止,我们的程序是全屏的,而且没有title和soft key,没有显示待机界面的indicator(三星称上方的menu bar为indicator,我们也这么称呼)。
  下面我们就显示着三个东东。
  首先打开Form,在Form上双击(不是在控件),打开Form的属性。
  找到title属性,输入hello app
  
  回车后看到界面的form如下:
  
  然后添加Soft Key
  
  找到属性里面的soft key 0 Text, soft key 1 Text以及Icon Path,这里我们在Soft Key 0 text 里输入Back,Soft Key Normal icon Path里添加一张图片。
  更新后显示如下:
  
  然后添加系统标题栏:
  找到属性下style下的indicator,设为true
  
  最后保存我们的资源文件,Build工程,运行工程。
  
  ok,本节到此结束
  后续会学习添加时间,处理点击,按钮,拖拽等事件
  No related posts.
  以上关联文章由 Yet Another Related Posts Plugin 提供支持。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics