
让我们继续打开“src”下的MyApp.java文件,看一下默认生成的代码刚刚如何在屏幕上显示了“Hello World, MyApp”。

在重写的onCreate方法中,最后一行setContentView(R.layout.main)设置了当前Activity的视图(View)。View包含了用户界面的布局和内容属性(View中可以包含View或者是继承自View的widget——比如Button等等),Activity设置了View以后就可以呈现一个图形的用户界面。新建一个View有两种方法,一个是在代码中使用new View()方法——当然,完全在代码中创建一个用户界面并很好地组织它是一件很繁琐的事情,所以,还有一种更加直观的方法定义View,那就是xml布局文件,让我们打开“res/layout”目录下的main.xml文件看一下。

在右面的树状图我们可以看到,这个View由一个根元素LinearLayout组织所有的屏幕元素,。在这里加载了一个TextView,这个widget可以向用户显示一些文本信息。我们可以切换到xml的文本编辑模式进行查看和属性编辑:

其中TextView定义的属性中有这样一行:android:text="@string/hello",这是定义了TextView显示的文本内容。“@string/hello”表示引用了string资源的hello对象,打开“res/values”目录下的strings.xml文件,你可以找到hello的值。由于设置了TextView的text属性,所以,屏幕上会显示这样一行文本“Hello World, MyApp”:

让我们再尝试添加一些其它组件,比如Button:



打开MyApp.java文件,我们在onCreate()方法中添加这个Button的Click事件响应。这里需要用findViewById(int id)方法从id获得View(包括所有继承自View的对象),再给Button添加onClickListener:


1 条评论:
谢谢牛哥的精彩教程,看了你的教程,我的学习总算有点进展了,懂得添加控件等一简单的操作;这感觉有点像当年用J2ME写AWT程序一样,呵呵,一直做J2EE,很久没有回味一下写CS程序的体验了
发表评论