黑马程序员-Android基础四大组建之Activity

来源:互联网 发布:淘宝黑搜索技术论坛 编辑:程序博客网 时间:2024/06/07 06:28

——- android培训、java培训、期待与您交流! ———-
在我学习andriod的过程中,从基础慢慢了解深入,首先接触的是activity。activity是android所有的基础,代表了一个页面,所有的内容都通过activity来展示。比如承载信息的控件,button,checkbox,listview等等。我们的android应用是由很多个activity组成的,每个页面之间的切换都是事件的触发导致从一个activity跳转到另一个activity,这下就引出了activity的生命周期。Activity 是由Android 系统进行维护的,它也有自己的生命周期,即它的一个产生、运行、销毁的一个周期,对于Activity,关键是其生命周期的把握,其次就是状态的保存和恢复,以及Activity 之间的跳转和数据传输。作为android的四大组建之一。activity要在清单文件中声明。如下格式:

<activity              android:name=".AActivity"              android:label="@string/aactivity">              <intent-filter>                  <action android:name="android.intent.action.MAIN" />                  <category android:name="android.intent.category.LAUNCHER" />              </intent-filter>          </activity>          <activity              android:name=".BActivity"              android:label="@string/bactivity">          </activity>  

一个activity的生命周期将会调用到以下的方法,onCreate();onStart();onResume();onPause();onStop();onDestroy();以下应用一张图片,清晰地展示了activity的生命周期,及其是如何转换的
这里写图片描述
通过示例代码打印的log日志能够清楚的了解到一个activity从出生到销毁经历了怎么样的方法调用,我们可以在当前方法调用时写上自己的业务逻辑代码,实现自己的业务逻辑。

package com.activity;  import android.app.Activity;  import android.content.res.Configuration;  import android.os.Bundle;  import android.util.Log;  public class LifecycleActivity extends Activity {      private static final String TAG = "LifecycleActivity";      @Override      protected void onCreate(Bundle savedInstanceState) {          super.onCreate(savedInstanceState);          Log.i(TAG, "onCreate");      }      @Override      protected void onRestart() {          super.onRestart();          Log.i(TAG, "onRestart");      }      @Override      protected void onStart() {          super.onStart();          Log.i(TAG, "onStart");      }      @Override      protected void onResume() {          super.onResume();          Log.i(TAG, "onResume");      }      @Override      protected void onPause() {          super.onPause();          Log.i(TAG, "onPause");      }      @Override      protected void onStop() {          super.onStop();          Log.i(TAG, "onStop");      }      @Override      protected void onDestroy() {          super.onDestroy();          Log.i(TAG, "onDestroy");      }      @Override      protected void onSaveInstanceState(Bundle outState) {          super.onSaveInstanceState(outState);          Log.i(TAG, "onSaveInstanceState");      }      @Override      protected void onRestoreInstanceState(Bundle savedInstanceState) {          super.onRestoreInstanceState(savedInstanceState);          Log.i(TAG, "onRestoreInstanceState");      }      @Override      public void onConfigurationChanged(Configuration newConfig) {          super.onConfigurationChanged(newConfig);          Log.i(TAG, "onConfigurationChanged");      }  }  

从一个页面跳到另一个页面我们需要新建一个Intent意图,然后用StartActivity(intent)来启动activity。用OnActivityResult()的方法来启动一个带有返回值的activity,在父activity中用setResult方法来接受返回值

intent = new Intent(this,class);startActivity(intent);//  onActivityResult(requestCode, resultCode, data);
0 0
原创粉丝点击