我是Objective C的初学者。在导航控制器中选择TableRow后,我正在设置Mapview。我收到此错误,终止了应用程序。
-[UIView setRegion:animated:]: unrecognized selector sent to instance 0x806b2c0
这是我对Mapview的viewWillAppeer
- (void)viewWillAppear:(BOOL)animated {
CLLocationCoordinate2D zoomLocation;
zoomLocation.latitude = 39.281516;
zoomLocation.longitude= -76.580806;
if (CLLocationCoordinate2DIsValid(location)) {
MKCoordinateRegion mapRegion = MKCoordinateRegionMakeWithDistance(zoomLocation, 0.5*METERS_PER_MILE, 0.5*METERS_PER_MILE);
[_mapView setRegion:mapRegion animated:YES];
} else {
NSLog(@"Invalid coordinates");
}
}
此导入mapkit和corelocation的头文件,并具有此属性。
@property (weak, nonatomic) IBOutlet MKMapView *mapView;
头文件包括mapkit和coreelocation,并使这个属性变强也没有改变任何东西。
答案 0 :(得分:2)
之所以发生这种情况,是因为我之前在我的LocateItemViewController(具有地图视图的控制器)上挂了一个名为“mapView”的插座,并且从未将其从“Connections Inspector”中删除。
在Outlets部分看到名为“view”的灰色插座,我有一个名为mapView的类似的
答案 1 :(得分:0)
变量_mapView
被修改为UIView
。该函数属于MKMapView
而不是UIView
。