Začínám docela frustrovaný s omezeními MKMapKit. Můj současný problém má co do činění s z- uspořádání zobrazení anotace, zejména pokud se týká doteky. Máte-li přijmout výchozí vykreslování objednávky mapkit vám dává:
- Pořadí se objeví náhodně. Pořadí vykreslování nesouvisí s cílem byly přidány poznámky.
- Jestliže jeden anotace skončí na vrcholu jiný, dotýká horní anotace zpravidla vyvolá popisek pro spodní anotaci. Vypadá to, že hit detekci ani dodržovat pořadí kreslení. Co je s tím?
Snažil jsem se řešení # 1 s použitím něco podobného následující kód nalezené na webu (který byl navržen tak, aby dát nějakou kontrolu nad tím, z-pořadí)
- (void) MapView: (MKMapView *) MapView didAddAnnotationViews: (NSArray *) pohledy {
pro (MKAnnotationView * annView v pohledech) {
TopBottomAnnotation * ann = (TopBottomAnnotation *) [annView Anotace];
if ([Ann nahoru]) {
[[AnnView SuperView] bringSubviewToFront: annView];
} Else {
[[AnnView SuperView] sendSubviewToBack: annView];
}
}
}
Běh přes pohledy poznámek předány MapView: didAddAnnotationViews: a nastavení jejich pořadí vykreslování nezdá se, že opravit # 1. Problém je v tom, že nyní názory popisky jsou už ne vždy nahoře na zobrazení poznámek. MapKit zdá se dostat velmi zmatená o vrstev (popisky třeba vyvodit ve vrstvě nad všech pohledech anotace). Já si dokonce vymyslet, jak se dostat zmatený, protože všechny MKAnnotationViews obdržíte mít stejnou SuperView (vlastní třídu MKOverlayView). Člověk by si myslel každý rozumný návrh by rád popisky o tomto překryvu pohledu.
Má někdo vyřešil # 1 nebo # 2 úspěšně?













