MKMapView maptype不变?

时间:2011-01-12 13:51:27

标签: iphone objective-c ios cocoa-touch mapkit

我无法理解为什么我的MKMapView不想更改为卫星视图。这个方法被调用,案例1被调用我已经跨过它,但它根本不会改变为卫星类型,它总是变为标准。它只在返回Map类型时才有效。有人有什么想法吗?

- (IBAction)mapSatelliteSegmentControlTapped:(UISegmentedControl *)sender
{
    switch (sender.selectedSegmentIndex)
    {
        case 1: //Satellite 
            self.mapView.mapType = MKMapTypeSatellite;
        default:  //Map 
            self.mapView.mapType = MKMapTypeStandard;
    }
}

2 个答案:

答案 0 :(得分:18)

您的MKMapView随时可以更改为卫星视图。但是你强迫它处于标准视图中。

“您错过了break 中的case 1声明。

答案 1 :(得分:12)

switch (((UISegmentedControl *) sender).selectedSegmentIndex) {
        case 0:
            map.mapType = MKMapTypeStandard;
            break;
        case 1:
            map.mapType = MKMapTypeSatellite;
            break;
        case 2:
            map.mapType = MKMapTypeHybrid;
            break;

        default:
            break;
    }

在xib处使用此代码和连接,并将“更改值”更改为分段控件