这很奇怪,我有一个ViewController
,它添加一个MKMapView
作为子视图。应用程序中有一些步骤在执行时会导致用户位置引脚将其颜色从蓝色更改为灰色。
我在以下方面进行了调查
- 代码库中没有更改色调颜色的地方
KVO
用于观察色调颜色- 分析在"
viewWillAppear
"(直到最后一行)中,色调颜色是"UIDeviceRGBColorSpace
0 0.478431 1 1",而在"viewDidAppear
"中,色调颜色变为"UIDeviceWhiteColorSpace
0.392275 0.8"
请详细说明色彩空间是否有变化。
CGFloat mapviewY = self.searchView.frame.origin.y + self.searchView.frame.size.height + 1;
CGFloat mapviewHeight = self.view.frame.size.height - mapviewY;
_klMapView = [[KMapMapView alloc] initWithFrame:CGRectMake(kScreenOrigin,
mapviewY,
SCREEN_WIDTH,
mapviewHeight)];
_klMapView.mapViewDelegate = self;
[self.view addSubview:_klMapView];
谢谢安吉特
检查您是否正在使用mapView(mapView: _, viewForAnnotation: _)并以这种方式格式化。
func mapView(mapView: MKMapView!, viewForAnnotation annotation: MKAnnotation!) -> MKAnnotationView! {
if annotation.isKindOfClass(MKUserLocation) {
return nil
}
// rest of your code
}
好的,
所以得到了答案,实际上tint调整模式正在改变。修复它
mapView.tintAdjustmentMode = UIViewTintAdjustmentModeNormal;