У меня есть вид карты Google в контроллере просмотра внутри контроллера навигации, который находится на контроллере панели. Все работает так, как должно, но время загрузки на карте варьируется от 5-10 секунд, когда я изначально нажимаю на вкладку «Карта».Пытаться предварительно загрузить Google Maps View
Я пришел через несколько постов StackOverflow, которые перечисляют следующий метод поджимать вкладки:
for (UIViewController *viewController in self.tabBarController.viewControllers)
{
[viewController view];
}
Я изменил его к моей конкретной реализации.
for (UIViewController *viewController in self.tabBarController.viewControllers)
{
UINavigationController *navCon = (UINavigationController*)viewController;
for (UIViewController *vc in navCon.viewControllers) {
if ([[NSString stringWithFormat:@"%@",vc.class] isEqual: @"MapViewController"]){
MapViewController *mv = (MapViewController*) vc;
[mv view];
}
}
}
К сожалению, ни одна реализация не загружает вкладку карты.
функции
- Google Maps SKD 1.7.2
- IOS SDK 7,1
Редактировать ViewDidLoad на MapViewController.m
- (void)viewDidLoad
{
[super viewDidLoad];
mapView_ = [GMSMapView mapWithFrame:self.view.bounds camera:nil];
mapView_.delegate = self;
AppDelegate *appDelegate=(AppDelegate *)[UIApplication sharedApplication].delegate;
CLLocationCoordinate2D loc=appDelegate.locationManager.location.coordinate;
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:loc.latitude
longitude:loc.longitude
zoom:12];
[mapView_ setCamera:camera];
mapView_.myLocationEnabled=YES;
mapView_.settings.myLocationButton = YES;
self.view = mapView_;
}
Вы успешно использовали представления контейнеров в качестве стратегии предварительного просмотра представлений? Допустим, я не играл с этим. – eabraham
Абсолютно - много раз. Все, что мы делаем, это сложные клиент-серверные приложения. Обычно я предпочитаю просто держать их в заставке и вставлять их при готовности. – Fattie
Удивительно, я попробую. – eabraham