【Android源码 栏目提醒】:网学会员鉴于大家对Android源码 十分关注,论文会员在此为大家搜集整理了“Android 开发学习 HelloAndroid例子 - 讲义教程”一文,供大家参考学习
最近项目完成之后闲着无聊本想学习C、C基础太差而且太难了习惯了java开发回想我的同事没事情干学习
Android于是自己也开始学习
Android的开发。
本文来自CSDN博客转载请标明出处http://blog.csdn.net/ILOVEMSDN/archive/2008/01/27/2068340.aspx 创建工程 创建工程非常简单。
一个Eclipse插件可以使
Android开发更快捷。
你需要安装Eclipse3.3Europa或者更高版本并且你需要安装 Eclipse下的
Android插件一旦你安装了这些程序马上回来。
First heres a high-level summary of how to build Hello World: 首先下面是高度概括的关于如何创建”HelloWorld”的描述。
1. 通过 FileNewProject menu创建一个新的”
Android 工程”. 2. 在新的
Android工程对话框中填入项目细节。
3. 编辑自动生成的源代码模版显示相关的输出。
接下来我们一步一步详细描述整个过程。
1. 创建一个新的
Android项目 从Eclipse中选择 FileNewProject菜单项.如果AndroidADT成功安装这个对话框将由一个命名为 “
Android”的文件夹该文件夹包含一个简单的入口: “
Android 工程”。
一旦你选择了“
Android 工程”点击Next 按钮。
2. 填入工程细节 显示出来的窗口允许为你的工程输入相应的资料细节下面是一个例子 下面是屏幕显示窗口中每一个域的含义 工程名 你希望存放你的工程的计算机路径名。
包名 包命名空间-和Java程序设计语言类似-你希望你的源代码保存的空间。
这个同时也设置了将要生成的原始实体的包名。
在你的应用程序中使用的包名必须不同与所有你的系统中安装包的包名。
由于这个原因为你的应用程序命名一个标准域风格包是非常重要的。
在上面的例子中我们使用包域名为”com.google.
android”对于你的项目组而言你可以使用一个不同的并且合适的域结构名。
实体名 实体名是插件生成的原始类的名字。
它是
Android实体类的子类。
一个实体是一个简单的可以运行和工作的类它可以选择性的创建一个用户界面或者不创建。
应用程序名 应用程序具有良好阅读性的标题 ” Use default location ”选项框允许你改变生成和保存的项目文件在磁盘上的存储位置。
3. 编辑自动生成的源代码 插件运行后你将获得类似下面的一个名为HelloAndroid的类。
public class HelloAndroid extends Activity / Called when the activity is first created. / Override public void onCreateBundle icicle super.onCreateicicle setContentViewR.layout.main 下面要做的就是开始对它进行修改 构建用户界面 一旦你设置好工程之后接下来的步骤就是在屏幕上输入代码。
下面是完成以后的工程-接下来我们会一行一行的分析。
public class HelloAndroid extends Activity / Called when the activity is first created. / Override public void onCreateBundle icicle super.onCreateicicle TextView tv new TextViewthis tv.setTextHello
Android setContentViewtv 在
Android中用户界面由称作视的类及子类构建而成一个视就是一个简单的可绘制的对象比如单选框动画或者在我们例子中的文本标签。
这个特定的处理文本的视子类叫做TextView。
下面显示如何构造一个TextView类。
TextView tv new TextViewthis Text构造函数的参数是一个
Android上下文实例指针.这个上下文是一个简单的系统句柄它提供处理资源获取对数据库和参数选择的访问等等。
实体类从Context类集成而来.虽然我们的HelloAndroid类是一个实体子类它也是一个Context类因此我们可以传递’this’引用到TextView.: 一旦我们构造了TextView我们需要告诉它显示什么 tv.setTextHello
Android 这个没有什么意外。
在这里我们构造了一个TextView并且告诉它显示什么最终的步骤就是将TextView和屏幕显示联系起来如下 setContentViewtv 实体中的setContentView方法将视必须和实体的用户界面关联起来并显示内容到系统上。
如果一个实体没有调用这个方法系统中将没有UI存在并且系统会显示黑屏。
我们希望显示一些文字到屏幕上所以我们传递context到我们刚创建的TextView中。
这就是
Android中的 –“HelloWorld”下一步当然赶紧看看运行的效果吧 注意生成的代码中需要添加一行代码如下 Import
android.widget.TextView 否则会出现下面的错误提示 TextView can’t be resolved to a type 运行代码HelloAndroid Eclipse插件使运行应用程序变得更加容易。
从这个菜单入口开始RunOpen Run Dialog你将看到如下所示的对话框。
下一步选中”
Android Application”然后点击左上角的图标显示一页纸并且左上角带一个加号的图标或者简单的双击一下”
Android Applicton”入口你将看到一个命名为”New_configuration”的启动器。
将名字改为比较有意义的比如”HelloAndroid”然后通过点击浏览按钮选择你的工程如果你在Eclipse中打开了不止一个
Android工程请确保选择正确的一个.该插件自动扫描你的工程中的实体子类并将每一个添加到实体下拉列表中由于你的”HelloAndroid”工程只有一个实体所以它就是默认的一个你只需要简单继续就可以. 点击”应用”按钮下面是例子: 棒极了—你已经全部完成点击Run按钮
Android仿真器就会运行。
一旦仿真器启动之后你的应用程序显示出来让人激动的时候到了你将看到类似合格的界面 这个就是
Android的”HelloWorld”的例子非常简单吧指南接下来的部分将提供更多的细节当你学习更多关于
Android的内容之后你会发现很多有价值的东西 将用户界面转化成XML布局 你刚刚完成的“HelloWorld”的例子使用了我们称作”programmatic”的UI布局。
这意味着你直接使用代码来构造和创建应用程序用户界面。
如果你完成大量的用户界面编程你可能会意识到这种方法有时是多么的脆弱:一个版面小小的改动导致大量的
源码问题.同时也非常容易忘记连接适当的视图这都会导致你的版面错误并且浪费大量的时间来调试代码。
这就是为什么
Android提供一个动态的UI 构造模型:基于XML的布局文件。
最简单的阐明这个概念的方法就是举一个例子。
下面是一个XML布局文件在行为上它和上面你刚刚完成的使用程序构建的例子完全相同。
普通结构的
Android XML布局文件是简单的.它是一个标记树、每一个标记都是一个试图类.在这个例子中他是一个非常简单的树只有一个元素TextView。
你可以在你的布局文件中使用任何试图派生类的名字作为你的标记名包括在你自己代码中定义的视图类。
这种结构使得创建许多用户界面变得非常简单只需要使用一个简单的结构和语法相比较使用代码实现要容易得多。
这个模型是从web开发模型中得到的灵感在web开发中你可以从你的应用程序逻辑中分离用户界面然后再组合起来并填充数据。
This model is inspired by the web development model where you can separate the presentation of your application its UI from the application logic used to fetch and fill in data.这句话不是很明白所以翻译很牵强 In this example there are also four XML attributes. Heres a summary of what they mean: 这个例子中有四个XML属性。
下面是它们含义的概述 属性 含义 xmlns:
android 这是一个XML命名空间定义告诉
Android工具你将要引用
Android命名空间中定义的通用属性。
在每一个
Android布局文件中最外面的标记都有这个属性
android:layout_width 这个属性定义了这个视图使用的最大屏幕宽度。
在这个例子中我们只有这一个视图所以我们可以让它占有整个屏幕这就使”fill_parent”值得含义。
android:layout_height 这个和
android:layout_width属性差不多只不过这个定义的是屏幕可使用的高度。
android:text 这个设置了TextView包含的文本。
在这个例子中就是我们使用的”HelloAndroid”消息。
因此这就使XML布局看起来的样子但是它们放在什么地方呢就在你的工程的res/路径下。
”res”是”resources”的简写它包含你的项目需要的所有非代码资源包括图像本地化字符串和XML布局文件。
Eclipse插件为你创建这些XML文件.在我们上面的例子中我们简单地显示了一下。
在包浏览器中展开res/layout文件夹编辑main.xml文件.用上面的文本替换并且保存修改。
现在打开包浏览器中源代码文件夹中的名为R.java的文件你将看到如下的代码。
public final class R public static final class attr public static final class drawable public static final int icon0x7f020000 public static final class layout public static final int main0x7f030000 public static final class string public static final int app_name0x7f040000 一个工程的R.java文件定义了所有资源的索引。
在你的代码中使用这个类作为你个比较快捷的方法去访问你的工程能够中的资源。
对于像Eclipse这样子具有自动生成代码特性的IDE来说尤为功能强大因为它可以让你快速和交互地定位你搜索的特定引用。
最重要的事情是注意到的事名为”layout”的内部类和它的成员域”main”。
Eclipse插件会侦测到你添加了一个新的XML布局文件和重新生成的这个R.java文件当你添加了新资源到你的项目中之后你会发现R.java自动跟新。
最后要做的就是使用你的UI的新版本的XML文件修改你的HelloAndroid
源码以取代纯粹使用代码来修改。
下面是你的新类看上去的样子正如你所见
源码变得十分简单。
public class HelloAndroid extends Activity / Called when the activity is first created. / Override public void onCreateBundle icicle super.onCreateicicle setContentViewR.layout.main 当你做这些修改时不要只是拷贝和粘贴试用以下R类的代码完成特性你能发现它很有帮助。
做完这些修改之后回到前面重新运行你的应用程序-你需要做的所有事情就是点击那个绿色的Run 箭头图标或者从菜单中选择 RunRun Last Launched。
你将看到??哦正如你前面看到的一样非常神奇 最后需要指出的是这两种不同的布局产生的是完全一样的结果。
创建XML布局还有很多内容不过这已经超出了我们这里讨论的范围。
想了解这种强大的功能请参考实现一个用户界面的文档。
调试你的工程 The
Android Plugin for Eclipse also has excellent integration with the Eclipse debugger. To demonstrate this lets introduce a bug into our code. Change your HelloAndroid source code to look like this: Eclipse下
Android插件提供了与Eclipse调试器的完美集成。
为了演示这一点让我们引入一个bug到代码中。
如下所示修改你的HelloAndroid源代码。
public class HelloAndroid extends Activity / Called when the activity is first created. / Override public void onCreateBundle icicle super.onCreateicicle Object o null o.toString setContentViewR.layout.main 这个修改引入了一个空指针异常到你的代码中。
如果你重新运行你的应用程序你将会看到如下界面 为了找出导致错误的原因在你的代码行”Object onull”设置一个断点你只需要在Eclipse中双击这一行左边的空处。
然后从菜单中选择RunDebug Last Launched 进入调试模式。
你的应用程序将重启仿真器但这次当它运行到你设置的断点时它会挂起。
你就可以在Eclipse的调试节界面下一步一步进行跟踪就像你在其它环境下作的一样。
不使用Eclipse创建工程 如果你不使用Eclipse如果你使用其它其它的IDE或者间的的使用文本编辑工具和命令行工具那么Eclipse插件就对你毫无帮助。
不过你不用担心—你不会因为不使用Eclipse而损失什么。
Eclipse环境下的
Android插件紧紧是一套
Android SDK工具的一个封装而已这些工具象仿真器aaptadbddms和其它文档化的工具因此它也可以用其它工具来进行封装比如说一个’Ant’创建文件。
Android SDK包括一个Python脚本名字为”activityCreateor.py”它可以用来为你的工程创建所有的
源码和原始目录也可以生成一个兼容Ant的build.xml文件。
这可以让你从命令行创建你的工程或者与你选择的IDE集成起来例如创建一个类似我们刚刚通过Eclipse创建的HelloAndroid工程你可以使用这样的命令。
activityCreator.py --out HelloAndroid com.google.
android.hello.HelloAndroid 为了创建这个工程你要先运行命令’ant’当这个命令成功执行一个名为HelloAndroid.apk的文件将生成到文件夹bin/下面。
这个.apk文件十一个
Android包它可以使用adb工具安装到你的仿真器中.想了解更多使用这些工具的信息请阅读前面的引用文档。
我写想
Android的源代码如下基本为自动生成
上一篇:
Android安卓系统省电、省流量攻略
下一篇:
非常好用的串口跟踪程序c++语言实验已通过