Jak zrobić presentViewController z SLComposeViewController szybciej?
Otwieram widok komponowania na Twitterze w mojej aplikacji, ale wyświetlanie ekranu trwa zbyt długo!
Zacząłem używać następującego kodu, gdy użytkownik dotknie przycisku twitter:
if([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])
{
SLComposeViewController *tweet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];
[tweet setInitialText:@"initial text "];
[self presentViewController:tweet animated:YES completion:^
{
}];
}
Ale wyświetlanie ekranu zajmuje od 5 do 8 sekund! Dla mnie to za długo, widziałem aplikacje, które idą natychmiast. To nie jest problem z moją aplikacją, ponieważ stworzyłem nowy projekt tylko z tą funkcjonalnością, i to samo.
Pomyślałem więc, że opóźnienie nastąpiło w momencie tworzenia instancji ekranu, więc postanowiłem zadeklarować mój ekran tweeta w moim nagłówku i przenieść tę część do viewDidAppear:
if([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])
{
tweet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];
[tweet setInitialText:@"initial text "];
a na metodzie przycisku jest tak:
if(tweet)
[self presentViewController:tweet animated:YES completion:^
{
}];
ale nie było szybciej. Używam iPhone'a 4 i mam kilka aplikacji, które tworzą ekran do komponowania twittera naprawdę szybko, czy ktoś wie jak to zrobić?