Jestem w trakcie tworzenia mojego widgetu. Jak już umieściliśmy naszą aplikację z integracją widgetów. Ale teraz mam problem z dzisiejszym widżetem w iOS. Napisałem kod dla dwóch przypadków. Pierwszy raz, gdy widget jest początkowo ładowany po raz pierwszy przy uruchomieniu aplikacji, wywołuje usługę sieci Web i pobiera dane przez Internet, a następnie zapisujemy je w domyślnej konfiguracji użytkownika, aby móc później korzystać z niej."Nie można załadować" wiadomość w Widżecie dnia dzisiejszego
Teraz, gdy następnym razem użytkownik opuści menu powiadomień, najpierw wyświetlamy naszą starą zapisaną zawartość użytkownikowi, a następnie pobieramy ją z usługi internetowej i przechowujemy w tabeli domyślnej użytkownika, a następnie ponownie ładujemy tabelę.
Dla powyższej operacji mam problem z wielkością treści dla tabeli, migotaniem i komunikat "nie można załadować" w niektórych przypadkach.
Teraz spójrz na poniższy kod, wykonuję połączenie internetowe w poniższej metodzie, a po odpowiedzi serwisu internetowego, po prostu obsługuję program obsługi zakończenia.
- (void)widgetPerformUpdateWithCompletionHandler:(void (^)(NCUpdateResult))completionHandler {
// Perform any setup necessary in order to update the view.
// If an error is encountered, use NCUpdateResultFailed
// If there's no update required, use NCUpdateResultNoData
// If there's an update, use NCUpdateResultNewData
[self getBookedAppointmentsNew:completionHandler];
}
Proszę, podziel się ze mną swoimi doświadczeniami i pomysłami.
Wystarczy jednoznacznie, że wywołujesz usługę sieciową i nie wywołujesz procedury obsługi zakończenia do momentu zakończenia tego połączenia? –
Tak, robię to samo .. Wzywam serwis internetowy i po zakończeniu usługi, uzupełniam go o obsługę zakończenia. –
Właściwie, za każdym razem muszę wywoływać usługę sieciową, aby pobrać najnowsze informacje dla klientów, ale dopóki ich nie pobiorę, staram się pokazać wcześniej pobrane dane klientom. Tak więc nie ma szans na migotanie ekranu. Chcę odświeżyć widok z nową zawartością bez żadnych skutków ubocznych. –