Использование неразрешенного идентификатора ‘enumerate’ после быстрой миграции

#ios

#iOS

Вопрос:

У меня есть массив, называемый customAnnotationsArray , в который я добавляю класс (Аннотации). Этот класс, Annotations, является подклассом MKAnnotation и NSObject. В моей предыдущей версии Swift код for (index, value) in enumerate(customAnnotationArray) прекрасно работал для извлечения индекса pin-кода. Теперь в нем говорится, что «Используется неразрешенный идентификатор ‘enumerate’. Я провел тонну исследований и не могу найти никаких ресурсов. Как мне это исправить?

 //Annotations array (gets populated with annotations on data load)
var customAnnotationArray = [Annotations]()


//When tapping the MKAnnotationView.
func mapView(_ mapView: MKMapView, annotationView view: MKAnnotationView,
             calloutAccessoryControlTapped control: UIControl) {

    let theAnnotation = view.annotation

    //ERROR BELOW IN enumerate "Use of unresolved identifier 'enumerate'
    for (index, value) in enumerate(customAnnotationArray) {

        if value === theAnnotation {
            //print("The annotation's array index is (index)")

            //Im passing these variables in prepareForSegue to VC
            markerIndex = index
            addressSelected = addressArray[index]
        }
    }

    let vc = storyboard.instantiateViewController(withIdentifier: "updateRecordVC")
    self.navigationController!.pushViewController(vc, animated: true)  
}



//Annotations class if that helps.
class Annotations: NSObject, MKAnnotation {
    let title: String?
    let locationName: String
    let coordinate: CLLocationCoordinate2D
    let pinColor: MKPinAnnotationColor

    init(title: String, coordinate: CLLocationCoordinate2D, locationName: String, pinColor:MKPinAnnotationColor) {
        self.title = title
        self.coordinate = coordinate
        self.locationName = locationName
        self.pinColor = pinColor      
        super.init()
    }

    var subtitle: String? {
        return locationName
    }

    func currentPinColor(_ currentUser: Double) -> MKPinAnnotationColor?   {
        switch currentUser {
        case 0:
            return .green
        case 1:
            return .purple
        default:
            return .green
        }
    }
}
  

Ответ №1:

Попробуйте вместо этого использовать enumerated() метод:

 for (index, value) in customAnnotationArray.enumerated()
  

Надеюсь, это то, что вы ищете…

Комментарии:

1. Спасибо! Я удивлен, что в Xcode не было опции быстрого исправления для этого

2. Спасибо, брат… 1 для вас