高德地圖怎么圈定范圍?
在高德地圖中(v2.4),開啟定位后會在當前位置周圍顯示一個藍色的定位范圍圓環(huán)。很多時候我們不需要顯示這個圓環(huán),或者需要改變它的樣式。下面介紹一下修改這個圓環(huán)的方法。
首先在- (void)viewDidLoad 事件中開啟下面的屬性:
//gdMap為我定義的高德地圖對象名稱,這里根據(jù)你的需要換成自己的對象
gdMap.customizeUserLocationAccuracyCircleRepresentation = YES;
接下來需要在回調(diào)函數(shù)(如果你的代碼中沒有這個回調(diào)函數(shù),加上即可)中添加圓環(huán)樣式設(shè)置的代碼:
//回調(diào)函數(shù)
- (MAOverlayView *)mapView:(MAMapView *)mapView viewForOverlay:(id <<span class="s2">MAOverlay>)overlay
{
// 自定義定位精度對應(yīng)的MACircleView
if (overlay == mapView.userLocationAccuracyCircle)
{
MACircleView *accuracyCircleView = [[MACircleView alloc] initWithCircle:overlay];
accuracyCircleView.lineWidth = 2.f;
accuracyCircleView.strokeColor = [UIColor lightGrayColor];
accuracyCircleView.fillColor = [UIColor colorWithRed:1 green:0 blue:0 alpha:.3];
return accuracyCircleView;
}
return nil;
}
這段代碼寫好后運行一下看看結(jié)果,你會發(fā)現(xiàn)原來的藍色圓環(huán)變成紅色的了。
如果想隱藏的話很簡單,把圓環(huán)描邊和填充的顏色設(shè)置為透明即可:
accuracyCircleView.strokeColor = [UIColor colorWithRed:1 green:0 blue:0 alpha:0.0];
accuracyCircleView.fillColor = [UIColor colorWithRed:1 green:0 blue:0 alpha:0.0]