本篇博文最后修改时间:2016年4月5日,22:37。
一、简介
本篇介绍活动的基本用法。
二、实验平台
系统版本:Windows7 家庭普通版 32位操作系统。
三、版权声明
博主:思跡
声明:喝水不忘挖井人,转载请注明出处。
原文地址:http://blog.csdn.net/omoiato
联系方式:315878825@qq.com
Java零基础入门交流群:541462902
四、探究活动
活动的定义:活动(Activity)是一种可以包含用户界面的组件,主要用于和用户进行交互。
1、手动创建活动
①新建一个Android 项目
项目名ActivityTest
包名使用默认值com.example.activitytest
②不再勾选Create Activity 这个选项
③删除其它项目
④在src目录下添加一个包
包名为com.example.avtivitytest
⑤在包内新建一个类
类名为FirstActivity,并继承自Activity
⑥重写onCreate()方法
public class FirstActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
}
}
2、创建和加载布局
①手动创建一个布局文件
右击res/layout目录——New——Android XML File
布局文件名first_layout
根元素选择为LinearLayout
②点击first_layout.xml,编辑布局,添加一个按钮(Button)
Graphical Layout是当前的可视化布局编辑器,一是预览当前布局,二是通过脱宅的方式编辑布局。
first_layout.xml是通过XML文件的方式来编辑布局
因为在创建布局文件时,选择了LinearLayout作为根元素,
因此现在布局文件中已经有一个LinearLayout元素了。
添加一个按钮(Button)
<Button
android:id="@+id/button_1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 1"
/>
这里添加了一个Button元素,并增加了4个属性:
android:id: 给当前的元素定义一个唯一标识符
@+id/button_1 在XML中定义一个id
@id/button_1 在XML中引用一个id
android:layout_width: 指定了当前元素的宽度
match_parent表示当前元素和父元素一样宽
android:layout_height:指定了当前元素的高度
wrap_content表示当前元素的高度只要能刚好包含练的内容就行。
android:text: 指定了元素中显示的文字内容。
③点回Graphical Layout切换卡,预览当前布局
按钮(Button1)已经成功显示
④在活动中加载布局
回到FirstActivity,在onCreate()方法中加入如下代码:
setContentView(R.layout.first_layout);
这里调用了setContentView()方法来给当前的活动加载一个布局
在setContentView()方法中,我们一般都会传入一个布局文件的id
(在介绍gen目录的时候,有说过项目中添加的任何资源都会在R文件中生成一个相应的资源id,
因此我们刚才创建的first_layout.xml现在应该是已经添加到R文件中了)
只需要调用R.layout.first_layout,就可以得到first_layout.xml布局的id,
然后将这个值传入setContentView()方法即可。
3、在Android Manifest文件中注册
所有的活动都要在AndroidManifest.xml中进行注册才能生效。
下面我们就打开AndroidManifest.xml来给FirstActivity注册,代码如下:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.activitytest"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".FirstActivity"
android:label="This is FirstActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
讲解:
活动的声明要放在<application>标签内,这里是通过<activity>标签来对活动进行注册的
①使用Android:name制定具体注册哪一个活动
FirstActivity是com.example.activitytest.FirstActivity的缩写,
因为最外层的<manifest>标签中已经通过package属性指定了程序的包名是com.example.activitytest,
因此在注册活动时这一部门就可以省略了。
②使用Android:label指定活动中标题栏的内容
给主活动指定的label不仅会成为标题栏中的内容,
还会成为启动器(Launcher)中应用程序显示的名称。
③在<activity>标签内部加入了<intent-filter>标签,并添加了2句声明。
只有添加了这2句声明,才能让FirstActivity作为这个程序的主活动。
(主活动:打开程序后,首先打开的活动)
运行程序:
在界面的最顶部是一个标题栏,里面显示着我们刚才在注册活动时指定的内容。
标题栏的下面就是在布局文件first_layout.xml 中编写的界面,可以看到我们刚刚定义的按钮。
现在我们已经成功掌握了手动创建活动的方法,
下一篇让我们继续看一看我们在活动中还能做哪些更多的事情。