от
Мне нужно сделать снимок экрана моего приложения в iPhone. Всякий раз, когда есть захваченная всплывающая страница, на скриншоте виден только всплывающий вид, на снятом скриншоте фоновый экран становится черным. Мне нужен скриншот, чтобы показать всплывающее окно вместе с базовой страницей. Я кодирую в
Xamarin.Forms
. Я использую DependencyService для захвата скриншота в iOS и Android. В Android я могу захватывать всплывающие окна вместе с фоновой страницей. Но в iOS всплывает всплывающее окно с черным фоном.
var capture = UIScreen.MainScreen.Capture();
Это код в iOS DependencyService для захвата скриншота.              

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

1 Ответ

0 голосов
от
У меня был метод скриншота, который я использовал в одном из моих POC, но я не уверен, будет ли он работать с всплывающими окнами или нет, вы можете попробовать его
 private void TakeScreenshot()
    {
        var layer = UIApplication.SharedApplication?.KeyWindow?.Layer;
        var scale = UIScreen.MainScreen.Scale;
        UIGraphics.BeginImageContextWithOptions(layer.Frame.Size, false, scale);
        var context = UIGraphics.GetCurrentContext();
        if (context == null)
        {
            return; // Show popup screenshot was not taken 
        }
        layer.RenderInContext(context);
        var screenshotImage = UIGraphics.GetImageFromCurrentImageContext();
        UIGraphics.EndImageContext();
        if (screenshotImage != null)
        {
            screenshotImage.SaveToPhotosAlbum((UIImage, NSError) =
Добро пожаловать на сайт ByNets, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...