동일한 페이지에서 컬렉션보기와지도보기를 포함하는 신속한 앱을 제작하고 있습니다. 사용자는 컬렉션보기를 스크롤하여 쿠폰을 볼 수 있으며 (앱의 목적)지도보기에는 쿠폰의 실제 위치가 표시된 특수 효과 핀이 채워집니다.Swift에서 mapKit 주석을 CollectionView에 연결하는 데 도움이 필요합니다.
내 문제는 컬렉션보기 셀을 올바른 주석에 연결하는 것이 어렵다는 것입니다.
내가 아래지도에에게 주석을 추가 :
for location in self.queryDataMapAnnotations {
let annotation = MKPointAnnotation()
annotation.title = location["title"] as? String
annotation.subtitle = location["distance"] as? String
annotation.coordinate = CLLocationCoordinate2D(latitude: location["latitude"] as! Double, longitude: location["longitude"] as! Double)
self.mapView.addAnnotation(annotation)
}
그때 컬렉션을 스크롤 할 수 있습니다보기 세포
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
// get a reference to our storyboard cell
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: reuseIdentifier, for: indexPath as IndexPath) as! MyCollectionViewCell
// Connect cell to the linked annotation
// ** This links to a random annotation, but not the correct one - need help on this please **
self.mapView.selectAnnotation(self.mapView.annotations[row], animated: true)
}
중 하나는 컬렉션을 연결하는 방법에 나를 도울 수 있다면 올바른지도 주석을 보려면 가장 도움이 될 것입니다. 나는 그 언어로 도울 수있는 신속한 (조금) 것을 알고 있습니다. 감사합니다
콜렉션 셀이 ** 탭 **되었을 때 주석을 강조 표시하려는 목적은 무엇입니까? 현재 잘못된 콜렉션 뷰 dataSource 메소드에서'selectAnnotation()'을 호출하기 때문에. – nshuman
아니요, 사용자가 컬렉션 뷰를 스크롤 할 때 특수 효과를 선택하는 것이 목적입니다. 따라서 사용자가 첫 번째 컬렉션보기 셀로 스크롤하면 해당 주석이 선택되고 제목과 부제가 표시됩니다. 사용자가 두 번째 셀, 세 번째 등으로 스크롤 할 때 계속됩니다. –