2017-01-06 11 views
1

我有一個活動,打開圖像選擇器。在啓動圖庫時,選擇意向打開,您可以選擇一張照片,此功能在某些時間和某些設備上有效,但其他時間不起作用,並關閉Activity而不是調用OnActivityResult(該應用程序似乎是後臺,但重新打開後應用程序重新啓動)Andriod Xamarin - 應用程序關閉時使用圖片庫選取器

當它確實成功時,一切都按預期工作。

我已經試過這樣:

Button menu_upload = menu.FindViewById<Button>(Resource.Id.menu_upload); 
menu_upload.Click += (o, e) => 
{ 
    var imageIntent = new Intent(); 
    imageIntent.SetType("image/*"); 
    imageIntent.PutExtra(Intent.ExtraAllowMultiple, true); 
    imageIntent.SetAction(Intent.ActionPick); 
    StartActivityForResult(Intent.CreateChooser(imageIntent, "Select Image"), REQUEST_IMAGE_CAPTURE_MULTI); 

    // ALSO TRIED THIS WITH SAME RESULT 

    /*var imageIntent = new Intent(); 
    imageIntent.SetType("image/*"); 
    imageIntent.SetAction(Intent.ActionGetContent); 
    StartActivityForResult(
     Intent.CreateChooser(imageIntent, "Select photo"), REQUEST_IMAGE_CAPTURE_MULTI);*/ 

}; 

看來貌似活動時,它轉到後臺被銷燬。我如何正確地做到這一點?或者如何在選擇圖像後讓選擇器恢復到我的活動?

我已經簽出了關於此主題的其他文章,但我無法獲得任何工作。

+0

我認爲這是當你的應用程序在這種情況下被破壞的內存不足的問題,這是正常的Android應用。我認爲我們只能嘗試重寫'onSaveInstanceState()'來存儲數據並將它們讀回到'onCreate()' –

+0

@ GraceFeng-MSFT但是相機並沒有重新打開應用程序。用戶是否需要手動重新打開應用程序? – tcj123

+0

是的,應用程序需要手動打開。 –

回答

0

嘗試啓動選取器的活動是使用android:noHistory標誌集啓動的。這意味着當選擇器啓動並且父活動不再在屏幕上時,它由Andriod關閉。

更多信息可以在這裏的官方文檔中找到:

Official Android Activity Documentation

相關問題