【发布时间】:2019-11-26 05:49:49
【问题描述】:
现在,我有一个带有 PrepareData() 方法的活动,用于准备当前活动所需的所有数据,在设置所有内容之前调用 OnCreate。我调用这个方法,当发现一些问题时,我想完成当前的活动。
这是我的代码的 sn-p:
private void PrepareData()
{
try
{
//some code to prepare data here
}
catch(Exception ex)
{
Intent _startNewActivity = new Intent(this, ActivityB);
this.StartActivity(_startNewActivity);
this.Finish();
}
}
和这样的 OnCreate
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
// Create your application here
SetContentView(Resource.Layout.ActivityA);
PrepareData()
toolbar = FindViewById<Toolbar>(Resource.Id.toolbar);
if (toolbar != null)
{
SetSupportActionBar(toolbar);
SupportActionBar.Title = "Activity A";
SupportActionBar.SetDisplayHomeAsUpEnabled(true);
}
}
现在,当应用程序在 PrepareData 上发现错误时,会调用 Intent 并调用 this.Finish(),但不知何故应用程序没有立即完成 Activity A,它仍然设置工具栏,并调用 onResume。
我知道 onStop 总是在 onResume 之后调用的活动生命周期,但我想知道有没有办法立即完成当前活动,而不调用下一个代码?
【问题讨论】: