Экран зависает при нажатии на кнопку (Xamarin.forms) - PullRequest
0 голосов
/ 24 февраля 2020

Я пытаюсь создать страницу, на которой при нажатии на кнопку она получает данные и показывает индикатор активности в ожидании.

Но при нажатии на кнопку она зависает. Я связал свойство isVisible кнопки и установил его в false при нажатии. Когда это будет сделано, он устанавливает для isVisible значение true, но экран по-прежнему зависает.

И затем я пытаюсь с этим кодом

Device.BeginInvokeOnMainThread (() => {
  VidljivoDugmePretrazi = false;
});

Но не сработало, и такая же ситуация на странице входа и работа. Кто-то может мне помочь, или кто-то сталкивался с этой ситуацией? Спасибо.

1 Ответ

0 голосов
/ 24 февраля 2020

Вам необходимо вызвать свой асинхронный метод из основного потока, а затем обновить свойство isVisible в вашей модели представления.

Device.BeginInvokeOnMainThread(YourAsyncMethod);
private async void YourAsyncMethod()
{
    //...
    VidljivoDugmePretrazi = true;
    try
    {
      await GetDataAsync();
    }
    catch (Exception e) 
    {
      //...
    }
    finally
    {
       VidljivoDugmePretrazi = false;
    }
}
...