Z-упорядочивание MKAnnotationViews

Я знаю, что это не точно, как Вы хотите сделать это, но это мог быть запуск:

SELECT *
FROM (SELECT *, DATEPART(yy, column_dateTime) as Year, 
      DATEPART(mm, column_dateTime) as Month, 
      DATEPART(dd, column_dateTime) as Day 
      FROM table1)
WHERE Year = '2008'
AND Month = '8'
AND Day = '14'
13
задан btschumy 5 November 2009 в 16:04
поделиться

2 ответа

Если у вас есть собственный annotationView (который звучит так, как будто у вас уже есть), вы можете попробовать добавить это:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{
    [self.superview bringSubviewToFront:self];
    [super touchesBegan:touches withEvent:event];
}

Побочным эффектом является то, что каждый раз, когда вы касаетесь маркера, он также появляется в перед z-порядком, что на самом деле разумно, поскольку именно на этом и сосредоточен пользователь.

8
ответ дан 1 December 2019 в 22:39
поделиться

Рамин, это идеально подходит для того, что я пытаюсь сделать. Однако у меня не было определенного вида пользовательских аннотаций. Я решил эту проблему с помощью категории, и это сработало отлично!

Вот заголовок:

#import <Foundation/Foundation.h> 
#import <MapKit/MapKit.h>


@interface MKPinAnnotationView (ZIndexFix)
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event; 
@end

И реализация:

#import "AEBMapViewCategory.h"
@implementation MKPinAnnotationView (ZIndexFix)
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{
    [self.superview bringSubviewToFront:self];
    [super touchesBegan:touches withEvent:event];
}
@end
7
ответ дан 1 December 2019 в 22:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: