警告:'mapView'的本地声明隐藏了实例变量

时间:2011-04-11 20:05:05

标签: iphone sdk

拜托,任何人都可以解释并帮助我如何解决这个警告? thx提前。

-(void)mapView:(MKMapView *)mapView regionWillChangeAnimated:(BOOL)animated {

        mapRegion=mapView.region; //first warning
    }
    -(void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated  {

        newRegion=mapView.region; //second warning
        if(mapRegion.span.latitudeDelta>newRegion.span.latitudeDelta||mapRegion.span.longitudeDelta>newRegion.span.longitudeDelta)
            shouldAdjustZoom=NO;

    }

2 个答案:

答案 0 :(得分:4)

你有一个名为mapView的实例变量。

您可以将本地名称更改为其他名称。例如:

-(void)mapView:(MKMapView *)aMapView regionWillChangeAnimated:(BOOL)animated {

     mapRegion=aMapView.region; //first warning
}

-(void)mapView:(MKMapView *)aMapView regionDidChangeAnimated:(BOOL)animated  {
    newRegion=aMapView.region; //second warning
    if(mapRegion.span.latitudeDelta>newRegion.span.latitudeDelta||mapRegion.span.longitudeDelta>newRegion.span.longitudeDelta)
            shouldAdjustZoom=NO;
}

答案 1 :(得分:1)

在接口文件中更改MKMapView实例声明的名称,或在方法中更改局部变量的名称。

-(void)mapView:(MKMapView *)theMapView regionWillChangeAnimated:(BOOL)animated...