前言:生命中有不少人陪伴本身走過一輩子中的某段旅程,僅僅是有些人僅僅是某階段出現,有些人卻陪伴本身很是久。就像小學、中學、高中、大學,那些之前覺得會長久擁有的,當經歷過天涯各地地忙碌於生活,或如意。或失意;漸漸地那些畫面僅僅剩回顧。天涯各自安命,能在一塊兒的就盡力珍惜吧,不在一塊兒地就衷心地祝福,咱們都需要一種姿態生活下去!Android中的Activity的生命中,咱們經常需要打開另一個Activity,即另一個界面。這個可能出現的時間很是短暫,而後又回到主界面。但是這兩個Activity都在各自的生命週期中經歷了生命中的某個階段。html
該項目在上篇項目中加入相關內容,進行演示。項目結構例如如下:java
第一步:在layout中加入另一個界面佈局,即activity_sub.xml,代碼內容例如如下:android
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:id="@+id/text1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <Button android:id="@+id/close" android:layout_below="@id/text1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/close" /> </RelativeLayout>
固然主界面activity_sub.xml內容又一次佈局下。代碼例如如下:app
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:id="@+id/text1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <Button android:id="@+id/open" android:layout_below="@id/text1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/open" /> </RelativeLayout>
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">TestActivity</string> <string name="hello_world">Test Activity life cycle</string> <string name="close">關閉</string> <string name="open">打開另一個界面</string> </resources> ide
第三步:在src中新建一個文件SubActivity.java,代碼編寫例如如下:佈局
package com.wyz.testactivity; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class SubActivity extends Activity { private static final String TAG="SubActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sub); Log.d(TAG, "生命週期--建立階段(onCreate)"); Button btn_close = (Button)findViewById(R.id.close); btn_close.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { SubActivity.this.finish(); //關閉 } }); } protected void onStart() { super.onStart(); Log.d(TAG, "生命週期--開始階段(onStart)"); } protected void onResume() { super.onResume(); Log.d(TAG, "生命週期--恢復階段(onResume)"); } protected void onPause() { super.onPause(); Log.d(TAG, "生命週期--暫停建立階段(onPause)"); } protected void onStop() { super.onStop(); Log.d(TAG, "生命週期--中止建立階段(onStop)"); } protected void onRestart() { super.onRestart(); Log.d(TAG, "生命週期--從新啓動階段(onRestart)"); } protected void onDestory() { super.onDestroy(); Log.d(TAG, "生命週期--銷燬階段(onDestory)"); } }
package com.wyz.testactivity; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { private static final String TAG="MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d(TAG, "生命週期--建立階段(onCreate)"); Button btn_open = (Button)findViewById(R.id.open); btn_open.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { startActivity(new Intent(MainActivity.this, SubActivity.class)); //打開另一個界面 } }); } protected void onStart() { super.onStart(); Log.d(TAG, "生命週期--開始階段(onStart)"); } protected void onResume() { super.onResume(); Log.d(TAG, "生命週期--恢復階段(onResume)"); } protected void onPause() { super.onPause(); Log.d(TAG, "生命週期--暫停建立階段(onPause)"); } protected void onStop() { super.onStop(); Log.d(TAG, "生命週期--中止建立階段(onStop)"); } protected void onRestart() { super.onRestart(); Log.d(TAG, "生命週期--從新啓動階段(onRestart)"); } protected void onDestory() { super.onDestroy(); Log.d(TAG, "生命週期--銷燬階段(onDestory)"); } }
<activity android:name=".SubActivity" android:label="@string/app_name" > </activity>
注:android:name就是子界面的類名post
界面效果例如如下:this