Я испытываю проблему здесь на телефоне с iOS.
https://github.com/jamesmontemagno/MediaPlugin/issues/433?_pjax=%23js-repo-pjax-container
вот код, который переходит на страницу с фотографией.Вы можете увидеть все разные вещи, которые я пробовал
private async void addPhotosClickedAsync(object sender, EventArgs args)
{
// await ((RootPage)Application.Current.MainPage).Detail.Navigation.PushAsync(new TakePhoto(_workOrderId));
// await ((RootPage)App.Current.MainPage).Detail.Navigation.PushModalAsync(new TakePhoto(_workOrderId));
//Device.BeginInvokeOnMainThread(async () =>
//{
// await Navigation.PushAsync(new TakePhoto(_workOrderId));
//});
await ((RootPage)App.Current.MainPage).Detail.Navigation.PushAsync(new TakePhoto(_workOrderId));
}
На странице камеры есть значок кнопки камеры, который вызывает плагин для съемки фотографий.Когда пользовательский интерфейс изображения возвращается, он устанавливает источник изображения для только что сделанной фотографии.Пользовательский интерфейс на мгновение возвращается, а затем приложение внезапно возвращается в root
private async Task OnCameraTapped(object sender, EventArgs args)
{
CameraHelper cameraHelper = new CameraHelper();
try
{
ImgBytes = await cameraHelper.TakePicture();
PhotoImage.Source = ImageSource.FromStream(() =>
{
return new MemoryStream(ImgBytes);
});
}
catch (Exception ex)
{
if (ex.Message == "No camera available")
{
await DisplayAlert("Error", "No camera available", "Ok");
}
else
{
await DisplayAlert("Error", "Unable to take picture.", "Ok");
}
}
}
Есть ли какой-то способ обойти это?