我的应用程序以" SplashScreen"开头。当它完成后,它会转到" MainScreen"。
我在" MainScreen"然后我点击主页按钮:
案例1。我点击"概述" (显示最近应用程序的按钮),然后单击我的应用程序,然后继续它的位置,即在MainScreen上。
案例2。但如果我点击桌面/主屏幕上的应用程序图标,则会从零启动应用程序,即调用SplashScreen。
我想要它,如果我点击桌面上的图标,则会调用最后一个活动,因为它会显示最近的应用。
溅射屏幕:
[Activity(MainLauncher = true, LaunchMode = LaunchMode.SingleInstance,ClearTaskOnLaunch = true,
AlwaysRetainTaskState = false, ExcludeFromRecents = true, NoHistory = true,
Label = "MyApp", ScreenOrientation = ScreenOrientation.Portrait, Theme = "@style/Theme.FullScreen", Icon = "@drawable/icon")]
我打电话给#34; MainScreen"像这样:
Intent intent = new Intent(Application.Context, typeof(MainActivity));
intent.SetFlags(ActivityFlags.ClearTask);
StartActivity(intent);
OverridePendingTransition(Resource.Animation.fade_in_animation, Resource.Animation.fade_out_animation);
this.Finish();
OverridePendingTransition(Resource.Animation.fade_in_animation, Resource.Animation.fade_out_animation);
和MainScreen:
[Activity(MainLauncher = false, LaunchMode = LaunchMode.SingleTask,
AlwaysRetainTaskState = true, ExcludeFromRecents = false, NoHistory = false,
Label = "MyApp", ScreenOrientation = ScreenOrientation.Portrait, Icon = "@drawable/icon", Theme = "@style/Theme.FullScreen")]
答案 0 :(得分:1)
我想要它,如果我点击桌面上的图标,这会调用最后一个活动,就像“最近的应用程序。”
当您为LaunchMode = LaunchMode.SingleInstance
设置SplashScreen
属性时,每次用户点击主屏幕中的应用图标时,您的应用都会以SplashScreen
开头。
属性ClearTaskOnLaunch = true
表示从主屏幕重新启动时,除根活动外,是否将从任务中删除所有活动。请注意:当值为“true”时,每次用户再次启动任务时,无论他们最后在任务中执行什么操作,无论他们是使用Back还是Home,都会将其置于其根活动状态。按钮离开它。
将ExcludeFromRecents设置为false或删除此属性,您的应用图标将显示在“最近的应用”上,就像文档所说:
是否应从最近使用的应用程序列表(概述屏幕)中排除此活动启动的任务。也就是说,当此活动是新任务的根活动时,此属性确定该任务是否不应出现在最近的应用列表中。如果任务应从列表中排除,则设置为“true”;如果应该包含它,则设置“false”。默认值为“false”。
从SplashScreen
删除此属性,您可以实现此功能。