sekme çubuğunu da MKMapView erişme

oy
4

Bir tabbar uygulama var ve ilk sekmede bir var MKMapView. Ne yapmak istiyorum başka bir yere başvuruda dan, MapView aktif sekmeyi geçmek ve önceki görünümde verilere dayalı MapView en bölgesi (düğme ile tek MapView geçmek için) olarak ayarlayın.

Ne ben denedim geçerli:

[self.tabBarController setSelectedView:0];
UIMapViewController *mapView = [self.tabBarController.viewControllers objectAtIndex:0];
[mapView displayBookmarkAnnotation:bookmark];

Bu sadece benim yarattığım yöntemi bulamayan uygulamanın kilitlenmesine neden olur. Bunu uygulamak için en iyi yolu seçtiniz sanmıyorum ama gerçekten bu konuda gitmeli nasıl emin değilim.

[Güncelleme] tarafından döndürülen kontrolörü Döküm tabBarControllervardı hiçbir etkisi.

[Çözüldü] Bir döküm çalışıyordum UINavigationControllerbenim MapView için

[self.tabBarController setSelectedView:0];
UINavigationController *navController = [self.tabBarController.viewControllers objectAtIndex:0];
//if the tab has other views open, return to mapView
[navController popToRootViewControllerAnimated:YES];
UIMapViewController *mapView = (UIMapViewController *)[navController visibleViewController];
[mapView customMessage:object];
Oluştur 26/01/2010 saat 03:08
kaynak kullanıcı
Diğer dillerde...                            


3 cevaplar

oy
1

Emin o sekme için ana görünümünde denetleyicisi değil bir UINavigationController musunuz? Eğer öyleyse, sizin UIMapViewController olması gereken bunun için kök görünümü denetleyicisi alabilirsiniz.

Başka bir yerden çağıran olacak eğer olsa AppDelegate doğrudan başvuru koymak iyi olurdu.

Cevap 26/01/2010 saat 06:57
kaynak kullanıcı

oy
0

Neden AppDelegate aracılığıyla değil rota bunu? AppDelegate bir olabilir UITabBarControllerve MKMapView(hem arayüz oluşturucu üzerinden kablolu.) UIButtonÇağıracağı, böylece işleyici sonra da AppDelegate olacağını -[UITabBarController setSelectedView:]ve -[MKMapView setRegion:].

Cevap 26/01/2010 saat 05:46
kaynak kullanıcı

oy
0

Ne yapmak istediğiniz bir alt sınıf veya UITabBarController bir kategori oluşturmak olduğunu

  1. tanımladığınız NotificationCenter etkinlikler için kayıtlar
  2. Yeni bir seçici ile olayları ele alır. Genellikle onlar için adlandırma kuralı / yaptın kullanın.

Olay yoluyla geliyor ne zaman Selectedındex ayarlayın.

Cevap 26/01/2010 saat 05:35
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more