2017-08-22 20 views
0

我有一個以「SplashScreen」開頭的應用程序,當它結束時它會進入「MainScreen」。從「最近的應用程序」啓動應用程序和點擊應用程序圖標主屏幕的問題

我對「MainScreen」,我點擊主頁按鈕:

CASE 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")] 

我稱之爲‘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")] 

回答

1

我想要它,如果我從桌面上打這個圖標這個電話是最後一個活動,因爲它「最近的應用程序。

  1. 當您爲您的SplashScreenLaunchMode = LaunchMode.SingleInstance屬性,每次用戶點擊主屏幕中的應用圖標,應用程序將與SplashScreen開始。

  2. 屬性ClearTaskOnLaunch = true表示無論何時從主屏幕重新啓動任何活動,除根活動外,是否將從任務中刪除所有活動。請注意:當值爲「true」時,每次用戶再次啓動任務時,無論他們上次在任務中執行什麼操作,並且無論他們是使用Back還是Home按鈕別管它。

  3. 設置ExcludeFromRecents以虛假或刪除此屬性,你的應用程序圖標將顯示在「最近使用的應用」,就像文件稱:

無論任務通過本次活動啓動應該從最近使用的應用程序列表中排除,總覽屏幕。也就是說,當此活動是新任務的根活動時,此屬性確定該任務是否不應出現在最近的應用程序列表中。如果任務應該從列表中排除,則設置「true」;如果應該包含它,則設置「false」。默認值是「false」。

SplashScreen中刪除此屬性,即可實現此功能。

相關問題