Android-从子活动onResume()启动已完成的父活动
我有一个没有附加视图的MainActivity。这是一项启动活动,用于检查一周中的哪一天,并在该天启动一项新活动。我每周每天都有一项活动。 在检查当天并开始当天的活动后,我调用finish()以销毁main活动(这样当我单击后退按钮时,不会显示空白屏幕,我可以退出应用程序) 现在我面临的问题是-- 如果我点击home按钮或应用程序进入后台,如果当天发生变化,并且应用程序再次出现在前台,则会显示前一天的视图。它实际上应该得到更新,以显示当天的活动 由于onResume()是在应用程序返回前台后调用的,因此我尝试在每天活动的onResume()中添加以下代码,以再次启动MainActivity并检查当天的情况,然后启动特定的活动。但只显示一个空白屏幕 请查找以下代码: 主要活动Android-从子活动onResume()启动已完成的父活动,android,android-activity,onresume,Android,Android Activity,Onresume,我有一个没有附加视图的MainActivity。这是一项启动活动,用于检查一周中的哪一天,并在该天启动一项新活动。我每周每天都有一项活动。 在检查当天并开始当天的活动后,我调用finish()以销毁main活动(这样当我单击后退按钮时,不会显示空白屏幕,我可以退出应用程序) 现在我面临的问题是-- 如果我点击home按钮或应用程序进入后台,如果当天发生变化,并且应用程序再次出现在前台,则会显示前一天的视图。它实际上应该得到更新,以显示当天的活动 由于onResume()是在应用程序返回前台后调用
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
calendar= Calendar.getInstance();
int day=calendar.get(Calendar.DAY_OF_WEEK);
switch(day)
{
case Calendar.SUNDAY: {
Intent intent=new Intent(MainActivity.this, SundayTabActivity.class);
startActivity(intent);
break;
}
case Calendar.MONDAY: {
Intent intent=new Intent(MainActivity.this, MondayTabActivity.class);
startActivity(intent);
break;
}
case Calendar.TUESDAY: {
Intent intent=new Intent(MainActivity.this, TuesdayTabActivity.class);
startActivity(intent);
break;
}
case Calendar.WEDNESDAY: {
Intent intent=new Intent(MainActivity.this, WednesdayTabActivity.class);
startActivity(intent);
break;
}
case Calendar.THURSDAY: {
Intent intent=new Intent(MainActivity.this, ThursdayTabActivity.class);
startActivity(intent);
break;
}
case Calendar.FRIDAY: {
Intent intent=new Intent(MainActivity.this, FridayTabActivity.class);
startActivity(intent);
break;
}
case Calendar.SATURDAY: {
Intent intent=new Intent(MainActivity.this, SaturdayTabActivity.class);
startActivity(intent);
break;
}
}
finish();
}
SaturdayTabActivity onResume()方法
请帮助我了解这是否是正确的方法,或者我是否遗漏了任何内容。为AndroidManifest文件中的MainActivity添加launchMode=“singleTask”
<activity
android:name=".MainActivity"
android:launchMode="singleTask"/>
感谢您的回复。当我手动更改手机上的日期时,它起作用了。当日期自动更改时,将再次对其进行测试。再次感谢:)
<activity
android:name=".MainActivity"
android:launchMode="singleTask"/>