android 学习二 从HelloWorld说起

来源:互联网 发布:阿里云 合作伙伴 列表 编辑:程序博客网 时间:2024/06/05 07:25

在前面我们讲了android开发环境的搭建,下面我们讲一下android是如何创建application的,并且了解一下在android开发过程中常用的控件。首先我们创建一个android工程,以下要讲的东西全部在该工程中完成。

        选择File->new->other->android->android project,输入工程名字 MyAndroid01,选择android sdk版本为android 4.0,键入包的名称为com.myandroid01.main,点击finish完成android project的创建。

右击刚才新创建的工程,选择run as->android application ,此时会调用相应版本的android 模拟器,运行效果如下图所示:

        

由此我们建立了一个简单的android application:在界面中打印一句“Hello World,MyAndroid01 Activity”。并在顶端显示工程名称。下面让我们看看在代码中的体现。

        一个android应用程序的目录结构如下图所示:

        

其中,src是源代码存放的目录,gen目录存放android开发工具自动生成的文件,最终要的是R.java这个文件,该文件由android开发工具自动生成,Android开发工具会自动根据你放入res目录的xml界面文件、图标与常量,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字典的作用,它包含了界面、图标、常量等各种资源的id,通过R.java,应用可以很方便地找到对应资源。另外编绎器也会检查R.java列表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。res是资源目录,该目录主要用于存放使用到的各种资源,如xml界面文件、图片或者数据等。AndroidManifest.xml 是系统的配置文件,在该文件中实现对android应用的配置,新增的Activity,也需要在这个文件中进行相应配置,只有配置好后,才能调用此Activity。 

assets目录保存的文件可以打包在程序里,与res不同的是,在assets中的文件不会自动生成ID,如果需要使用该目录下的文件,需要制定路径和文件名。有人对android工程的目录结构做了总结,地址如下:http://www.cnblogs.com/skynet/archive/2010/04/13/1711479.html

下面我们看看具体的代码:在src目录下面会生成一个名为com.myandroid01.mian的包,在包中有自动生成的MyAndroid01Activity.java文件。这个就是我们的新添加的工程的源码:

package com.myandroid01.main;import android.app.Activity;import android.os.Bundle;public class MyAndroid01Activity extends Activity {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);    }}

由此可见,类MyAndroid01Activity继承自Activity类,并且实现了他的onCreate方法,在onCreate方法中调用了Main.xml的布局文件作为程序的主界面,即我们一开始看到的那个写着一串字的界面。

下面我们来看一下布局文件main.xml:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" >    <TextView        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:text="@string/hello" /></LinearLayout>
在该布局文件中首先是一个linearlayout 采用的是垂直布局的方式,在linearlayout中放置有一个Textview,textview内容是资源文件string.xml中名为hello的标签的值。

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="hello">Hello World, MyAndroid01Activity!</string>    <string name="app_name">MyAndroid01</string></resources>
即为:Hello World,MyAndroid01Activity!。由此我们也就接触了第一个控件TextView。



原创粉丝点击