У меня есть этот код:
protected override async void OnAppearing()
{
base.OnAppearing();
Subscribe();
vm.IsBusy = true;
if (Change.firstTimeCardsTab == true)
{
SetButtons(Settings.cc.ShortText());
await Task.Run(() => GetOnAppearingData());
}
}
private void GetOnAppearingData()
{
App.DB.GetData();
AddDetailSection();
SetPageDetails();
Change.firstTimeCardsTab = false;
vm.IsBusy = false;
}
vm.IsBusy = true; показывает индикатор активности на странице и vm.IsBusy = false; Я бы надеялся выключить его.
Однако, когда я запускаю код, я получаю сообщение:
Ошибка согласованности UIKit: вы вызываете метод UIKit, который может только
быть вызванным из потока пользовательского интерфейса.
Может ли кто-нибудь дать мне совет о том, как установить индикатор активности для отображения, затем получить данные, а затем установить их не показывать? Обратите внимание, что AddDetailSection (); добавляет некоторые элементы в XAML. Может ли это быть проблемой?