你的位置:首页 > 软件开发 > ASP.net > Xamarin android 之Activity详解

Xamarin android 之Activity详解

发布时间:2016-05-20 11:00:13
序言:上篇大概的讲解了新建一个android的流程。今天为大家带来的是Activity详解,因为自己在开发过程中就遇到好几次坑,尴尬。生命周期和Java里头一样一样的,如图图片来源于网上哈,自己画不来。 1.启动Activity:系统会先调用onCreate方法,然后调用on ...

序言:

上篇大概的讲解了新建一个get='_blank'>android的流程。今天为大家带来的是Activity详解,因为自己在开发过程中就遇到

好几次坑,尴尬。

生命周期

Java里头一样一样的,如图

Xamarin android 之Activity详解

图片来源于网上哈,自己画不来。

 

1.启动Activity:系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态。

2.当前Activity被其他Activity覆盖其上或被锁屏:系统会调用onPause方法,暂停当前Activity的执行。

3.当前Activity由被覆盖状态回到前台或解锁屏:系统会调用onResume方法,再次进入运行状态。

4.当前Activity转到新的Activity界面或按Home键回到主屏,自身退居后台:系统会先调用onPause方法,然后调用onStop方法,进入停滞状态。

5.用户后退回到此Activity:系统会先调用onRestart方法,然后调用onStart方法,最后调用onResume方法,再次进入运行状态。

6.当前Activity处于被覆盖状态或者后台不可见状态,即第2步和第4步,系统内存不足,杀死当前Activity,而后用户退回当前Activity:再次调用onCreate方法、onStart方法、onResume方法,进入运行状态。

7.退出当前Activity时:系统先调用onPause方法,然后调用onStop方法,最后调用onDestory方法,结束当前Activity。

 

以上提到的函数皆可以在Avtivity里面重写,如图:

Xamarin android 之Activity详解

新建的Activity默认只有Oncreate函数。

using System;using Android.App;using Android.Content;using Android.Runtime;using Android.Views;using Android.Widget;using Android.OS;using Android.Util;namespace FirstAndroidAPP{  [Activity(Label = "FirstAndroidAPP", MainLauncher = true, Icon = "@drawable/icon")]  public class MainActivity : Activity  {    int count = 1;    protected override void OnCreate(Bundle bundle)    {      base.OnCreate(bundle);      // Set our view from the "main" layout resource      SetContentView(Resource.Layout.Main);      // Get our button from the layout resource,      // and attach an event to it      Button button = FindViewById<Button>(Resource.Id.MyButton);      button.Click += delegate { button.Text = string.Format("{0} clicks!", count++); };    }    protected override void OnStart()    {      Log.Debug("OnStart", "Activity重新回到前台");      base.OnStart();    }    protected override void OnResume()    {      Log.Debug("OnResume", "OnResume called");      base.OnResume();    }    protected override void OnStop()    {      Log.Debug("OnStop", "OnStop called");      base.OnStop();    }    protected override void OnDestroy()    {      Log.Debug("OnDestory", "系统被销毁");      base.OnDestroy();    }    protected override void OnRestart()    {      Log.Debug("OnRestart", "系统重新回到前台");      base.OnRestart();    }  }}

原标题:Xamarin android 之Activity详解

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录