这篇文章主要介绍了android中页面切换和常用方法执行顺序是怎么样的,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
package com.example.android.active; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; import android.view.View; /** * @deprecated Activity生命周期中的7大方法和四中状态 * */ public class MainActivity extends Activity { /** * Activity被创建时调用 * 可以在该方法中初始化UI组件 * 该方法调用完毕会调用onStart()方法 * */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); System.out.println("MainActivity-onCreate()"); } /** * 被onCreate()调用,此时activity课件,但不能被操作 * 该方法会调用onResume()或者onStop()方法 * */ @Override protected void onStart() { // TODO Auto-generated method stub super.onStart(); System.out.println("MainActivity-onStart()"); } /** * 当一个处于stop状态下的activity重新获取焦点时调用 * 该方法会调用onStart方法 * * * */ @Override protected void onRestart() { // TODO Auto-generated method stub super.onRestart(); System.out.println("MainActivity-onRestart()"); } /** * 被onStart()调用,此时activity可见可交互, * 此时,activity处于激活(Running)状态 * * */ @Override protected void onResume() { super.onResume(); System.out.println("MainActivity-onResume()"); } /** * 当activity处于运行状态,被其他activity覆盖(位完全覆盖式调用) * 此时activity处于暂停状态,失去焦点,不可操作 * 此状态下activity可以被kill掉 * 如果当用户返回该activity,那么会调用onResume方法,重新获取焦点 * */ @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); System.out.println("MainActivity-onPause()"); } /** * 当activity完全被另一个activity覆盖时被调用 * 此时activity进入停止状态,完全不可见 * 此状态下activity可以被kill掉 * 当用户重新回到改activity,会调用restart方法 * * * */ @Override protected void onStop() { // TODO Auto-generated method stub super.onStop(); System.out.println("MainActivity-onStop()"); } /** * 当activity调用了finish方法,或被系统销毁时被调用 * 可以在该方法中进行资源释放的工作 * */ @Override protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); System.out.println("MainActivity-onDestory()"); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } /** * 通过这个方法跳转到activity2界面*/ public void gotoActivity2(View v){ //创建一个意图 Intent intent=new Intent(this,MainActivity2.class); //启动另一个activity startActivity(intent); } }
package com.example.android.active; import android.app.Activity; import android.os.Bundle; import android.view.Menu; public class MainActivity2 extends Activity{ /** * Activity被创建时调用 * 可以在该方法中初始化UI组件 * 该方法调用完毕会调用onStart()方法 * */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); System.out.println("MainActivity2-onCreate()"); } /** * 被onCreate()调用,此时activity课件,但不能被操作 * 该方法会调用onResume()或者onStop()方法 * */ @Override protected void onStart() { // TODO Auto-generated method stub super.onStart(); System.out.println("MainActivity2-onStart()"); } /** * 当一个处于stop状态下的activity重新获取焦点时调用 * 该方法会调用onStart方法 * * * */ @Override protected void onRestart() { // TODO Auto-generated method stub super.onRestart(); System.out.println("MainActivity2-onRestart()"); } /** * 被onStart()调用,此时activity可见可交互, * 此时,activity处于激活(Running)状态 * * */ @Override protected void onResume() { super.onResume(); System.out.println("MainActivity2-onResume()"); } /** * 当activity处于运行状态,被其他activity覆盖(位完全覆盖式调用) * 此时activity处于暂停状态,失去焦点,不可操作 * 此状态下activity可以被kill掉 * 如果当用户返回该activity,那么会调用onResume方法,重新获取焦点 * */ @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); System.out.println("MainActivity2-onPause()"); } /** * 当activity完全被另一个activity覆盖时被调用 * 此时activity进入停止状态,完全不可见 * 此状态下activity可以被kill掉 * 当用户重新回到改activity,会调用restart方法 * * * */ @Override protected void onStop() { // TODO Auto-generated method stub super.onStop(); System.out.println("MainActivity2-onStop()"); } /** * 当activity调用了finish方法,或被系统销毁时被调用 * 可以在该方法中进行资源释放的工作 * */ @Override protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); System.out.println("MainActivity2S-onDestory()"); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
文件配置
<application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.android.active.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".MainActivity2" > </activity> </application>
<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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_marginLeft="15dp" android:layout_marginTop="32dp" android:layout_toRightOf="@+id/textView1" android:text="启动第二个activity" android:onClick="gotoActivity2"/> </RelativeLayout>
运行项目
点击启动第二个activity后
点击返回按钮后
感谢你能够认真阅读完这篇文章,希望小编分享的“android中页面切换和常用方法执行顺序是怎么样的”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。