Pergunta

Eu tenho um uabableViewCell personalizado configurado com um MKMAPView configurado dentro da célula. Gostaria que o mapa ocupe toda a célula e, portanto, configurei a visualização do mapa para ter as mesmas dimensões que o comprimido.

O aplicativo está funcionando bem, mas os cantos quadrados na exibição do mapa se estendem além dos limites da célula da tabela. Existe uma maneira de mascarar os cantos da visualização do mapa para que ele se encaixe perfeitamente na célula da tabela? Acho que vi isso em outras aplicações.

Aqui está o código usado, mas ele realmente não revela muito, pois a maior parte da configuração é feita usando o IB.

[cell.mapView setMapType:MKMapTypeStandard];
cell.mapView.bounds = cell.frame;
MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } }; 
region.center.latitude = myLat ;
region.center.longitude = myLong;
region.span.longitudeDelta = 0.01f;
region.span.latitudeDelta = 0.01f;
[cell.mapView setRegion:region animated:YES];

Obrigado

Foi útil?

Solução

Tente definir o Cornerradius da camada do Mapview:

#import <QuartzCore/QuartzCore.h>
:
:
mapView.layer.cornerRadius = 8;

Isso vai arredondar todos os quatro cantos. Se você precisar apenas de cantos superiores ou inferiores arredondados, poderá enganar a posição do Mapview na célula para que os cantos superior ou inferior não fiquem visíveis.

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