Пользовательская загрузка GIF в Xamarin.Forms в качестве индикатора активности

Я просто хотел бы знать, что что-то возможно, так как я новичок в Xamarin, и у меня есть ограничение по времени для задания. Я не против проб и ошибок, но не хочу тратить время зря, если это невозможно

Я хочу, чтобы в качестве индикатора активности был анимированный гиф (это логотип).

У меня он работает в WebView - возможно ли, чтобы в Xamarin, Forms это отображалось как наложение во время ожидания длительных методов?

Например. если пользователь нажимает кнопку, приложение получает некоторую информацию от веб-службы, а затем отображается на странице. В ожидании я хотел бы показать веб-просмотр (или любой другой способ показать анимированный gif).

Поэтому я не прошу код, но просто, если это возможно.

заранее спасибо


person user1667474    schedule 12.09.2014    source источник


Ответы (3)


Я смог это решить

С анимированным (загружающим) gif, запущенным на странице WebView, я вызвал несколько асинхронных методов, используя следующие

await Task.WhenAll(method1(), method2());
await Navigate.PushAsync(new NextPage(var1, var2));

Загрузочный gif (который представляет собой анимированный логотип) работает до тех пор, пока задачи не будут завершены, а затем перейдет на следующую страницу.

person user1667474    schedule 17.09.2014
comment
Используемый вами веб-просмотр прозрачен? Я пробовал так же, но он работает, единственная проблема в том, что загрузчик не прозрачен. Вы решили это? - person Sandip Jadhav; 02.05.2018

Использование ImageView, по-видимому, не похоже на возможность воспроизведения анимированных Gif, как можно увидеть здесь http://forums.xamarin.com/discussion/17448/animated-gif-in-image-view.

Поэтому я очень сомневаюсь, что ActivityIndicator сделал бы это, если бы мог. В ActivityIndicator я не вижу никаких функций для изменения содержимого того, что отображается, когда оно занято.

Однако вы всегда можете создать собственное представление анимированного изображения, создав настраиваемое средство визуализации. Если у вас есть список разделенных изображений, нетрудно циклически чередовать изображения с заранее определенными промежутками.

person Pete    schedule 12.09.2014
comment
Спасибо за ответ, Пит, но я не думаю, что объяснил это достаточно хорошо - мне удалось это решить - см. Ниже - person user1667474; 17.09.2014

Изображения GIF можно использовать в формах Xamarin для отображения настраиваемого индикатора активности, поскольку в формах Xamarin невозможно отображать изображения GIF напрямую, необходимо использовать веб-представление. Для Android изображение должно быть помещено в папку с ресурсами, а для действия сборки должно быть установлено значение AndroidAsset. Для iOS изображение должно быть размещено внутри ресурсов, а для действия сборки должно быть установлено значение BundleResource. AbsoluteLayout можно использовать для размещения изображения по центру, свойство IsBusy помощников mvvm nuget можно использовать для управления видимостью индикатора активности. Для получения пути к изображению необходимо использовать службу зависимостей. Вы можете проверить это https://github.com/LeslieCorrea/Xamarin-Forms-Custom-Activity-Indicator.

person Leslie Correa    schedule 30.08.2018