Android组件介绍之Activity(2)

在第一篇文章中介绍了Activity的概念以及生命周期的流程,现在我们来看一下如何创建Activity。这里我们使用adt-bundle来建立Android Project。大家也可以使用Android Studio来建立工程。OK,开始吧

一、新建Android Application Project

            打开新建界面选择Android>Android Application Project,点击Next,进入下一个界面之后如下图:
    
来说明下每个字段:Application Name:新建的应用名称
    Project Name:对应的工程名称
    Package Name:工程所在的包名
    Minimum Required SDK:开发的应用所需求最低SDK版本
    Target SDK:开发应用时的目标SDK
            Compile With:开发时的编译SDK设置
                                    Theme:主题预设
点击Next>Next>Finish,就建立好了一个Android工程了,目录如下:

src目录是我们最主要的工程文件,我们建立的类文件.java都存放在此。AndroidManifest.xml是配置组件的配置文件,当我们新建了Activity等组件时,需要在此注册。res是系统自动生成的用于管理资源的文件,里面的layout目录下是对应的activity的显示布局,可以在新建立的Android XML Files配置我们想要的布局效果。

二、创建Activity

先看下图:

第一次创建请设置好您的包名Package Name;
请输入类名Name;
如果您想要不同的访问控制权限,辣么您可以在Modifers里进行修改;
如果您想要创建主方法,请勾选public static void main(String[] args);
如果您创建的是Activity,请设置您的SuperClass为android.app.Activity!!!创建完成点击Finish
这样我们就创建了一个Activity

三、注册Activity

所有新建的Activity都要进行注册,打开AndroidManifest.xml,点击Application标签,点击Add按钮,选择Activity,添加完毕之后在右侧有个Name对话框,点击Browse按钮,它会查找项目里未注册的Activity项(之所以会查找Activity是因为之前添加的是Activity,如果添加Service则会查找Service),点击我们的Activity,此时我们的Activity就注册好了。Ctrl+S保存之后我们可以在AndroidMaifest.xml标签里看见我们新添加的Activity xml代码:

当然了,注册Activity也可以直接用代码的方式,我们可以直接在AndroidManifest.xml中的<application></application>标签里添加<activity>标签并设置android:name属性即可。

四、布局Activity

创建并注册好Activity之后,我们还需要对其进行布局,因为我们总不希望自己看到的界面啥都木有吧,所以我们要进行布局,Android的布局方式是使用xml语言。
打开res文件找到layout文件目录,在其下新建一个Android XML File,完成之后看到如下界面:

它有2个布局方法,图形可视化布局以及xml代码编辑,我们可以在两个标签之间切换来查看我们的布局效果。在图形化编辑界面的左侧是一堆控件,我们可以根据布局需要使用它们,当然了,专业人士都是直接敲xml的,那样效率更高。反正我不是专业 的。

五、显示Activity

创建,注册,布局设置都完成了之后,我们可以看看我们的Activity效果了。打开我们的Activity类,这里我们要重载OnCreate()方法。还记得Activity的生命周期么,第一个就是OnCreate。我们在Oncreate方法里进行显示:

setContentView(R.layout.activity_main)是显示我们的布局,R代表res文件,layout是我们的布局目录,activity_main就是我们所要显示的布局。
按照上述设置好之后就可以在启动Activity之后加载我们的布局了

六、关闭Activity

想要关闭一个activity只需要调用其自身的finish()方法就可以啦

七、Activity补遗

(1)、锁定Activity运行时的屏幕方向:
    
<activity android:name=".EX01"
          android:label="@string/app_name" 
          android:screenOrientation="portrait">// 竖屏 , 值为 landscape 时为横屏
 </activity>
(2)、Activity设置全屏
 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,  WindowManager.LayoutParams.FLAG_FULLSCREEN); 
 // 去除标题栏
 requestWindowFeature(Window.FEATURE_NO_TITLE);
(3)、在Acitivity的Title标题栏中加载进度条
   
为了获取更好的用户体验,一般可以在Activity的加载过程中设置一个进度条来提示用户不要着急,所以我们可以如下设置:
 // 不明确进度条
 requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); 
 setContentView(R.layout.main); 
 setProgressBarIndeterminateVisibility(true); 

 // 明确进度条
 requestWindowFeature(Window.FEATURE_PROGRESS); 
 setContentView(R.layout.main); 
 setProgress(5000);

Activity的相关内容简单介绍到着,下一篇我们将介绍与Activity密切相关的Intent内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值