Pergunta

Eu tenho um TableCell personalizado com um MapView incorporado mostrando uma pequena área. Quando o usuário seleciona a célula, eu quero empurrar um novo modo de exibição com um mapview maior e mais algumas informações, como a distância de onde você está, opção de escolher quais do tipo mapa etc.

Se eu deixar uma pequena margem ao redor da minha mapview, o usuário pode clicar em que a margem para selecionar a célula, mas como posso fazer a célula selecionada se clicar no interior da mapview?

regards,
-Vegar

Foi útil?

Solução

Eu acho que você precisa substituir o método hitTest herdada de UIView

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event

Este método percorre a vista hierarquia, enviando o pointInside: withEvent: mensagem a cada subexibição para determinar quais subexibição deve receber um evento de toque. E se pointInside: withEvent: retorna SIM, em seguida, a hierarquia da subexibição é atravessado; caso contrário, seu ramo de a hierarquia vista é ignorado. Você raramente precisam invocar esse método, mas você pode substituí-lo para esconder toque eventos de subviews.

Outras dicas

Tente definir a propriedade userIteractionEnabled de MapView para NO

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top