我对android中Activity的理解

来源:互联网 发布:淘宝卖家怎么上美柚 编辑:程序博客网 时间:2024/04/19 22:31

一、Activity是什么

在我们的应用中,我们看到设备屏幕显示出来的东西都是属于Activity的,Activity可以说是一个平台,这个平台上我们用来展示View的各种子类(布局、控件、自定义的View)。Activity就像一个鱼缸或者窗户,而View就像鱼缸的水和鱼,窗户外面的风景。我们看到的东西是View,但是我们必须借助Activity才能看到。

二、Activity的生命周期

Activity的生命周期有以下几个:onCreat、onStart、onResume、onPause、onStop、onRestart、onDeatroy。

我们启动一个新的Activity的时候会依次调用onCreat、onStart、onResume,只有调用onResume的时候我们才能看到Activity要显示的内容。

一旦Activity被其他Activity覆盖(比如DialogActivity)或者进入锁屏状态,Activity就会进入onPause状态,当Activity重新回到前台的时候会再次调用onResume方法。

如果跳转到新的Activity或者按下Home键回退到设备主界面,那么这时候会先调用onPause方法,然后调用onStop方法。当用户再次回到这个Activity的时候,会先调用onRestart方法,然后调用onResume方法。

如果一旦Activity不可见的时候(被覆盖或者出于后台),而系统内存不足的时候,系统会自动杀死Activity。以后再次进入这个Activity的时候,需要重新调用onCreat、onStart、onResume方法。

三、Acticity的跳转

Intent intent = new Intent();intent.setClass(XxxActivity.this,NextActivity.class);startActivity(intent);
暂时已知跳转方法(以后有新的方法,再进行更新)

四、如何利用Activity的生命周期

一般来说,我们会把一些准备工作放到onCreat和onStart方法里面,因为这个时候Activity并没有显示,所以我们在后台进行一些准备工作。比如调用setContentView方法,设置这个Activity需要显示的View,或者对一些变量进行初始化。(未完。。。。)

五、其他

Activity必须在AndroidMainFest.xml文件中进行注册

<activity android:name="这里填写你需要注册的Activity的名字(包括全限定名)"  android:同时这个标签里面还能定义其他activity的一些属性,比如横屏、竖屏的选择><intent-filter>这里可以设置程序启动的第一个Activity以及其他一些属性</intent-filter> <meta-data>该标签功能暂时未知,待更新......</meta-data> </activity> 




0 0
原创粉丝点击