์๋ ํ์ธ์ Foma ์ ๋๋ค!
์ ๋ฒ ์๊ฐ์๋ ์ ํ์ง๋์ ์ํ๋ ์์น ํ์ํ๋ ๋ฒ์ ๋ํด์ ์์๋ณด์๋๋ฐ์.
(ํน์ ์๋ณด์ ๋ถ๋ค์ ์ฌ๊ธฐ ๋ฅผ ํตํด์ ๋ณด๊ณ ์์ฃผ์ธ์!)
์ฌ๊ธฐ์ ๋ ์ ๊ทธ๋ ์ด๋ ํด์ ์ํ๋ ์์น์ ์ ๋ ๊ฒ ์ ํด์ง ๋งํฌ ํ์๋ง๊ณ ๋ด๊ฐ ์ํ๋ ์ด๋ฏธ์ง๋ ๋ ์ด๋ธ์
๋ฃ์ ์ ์์๊น? ํ๋ค๊ฐ ์ฐพ์๋ด์ ์ ๋ฆฌํ๊ฒ ๋์์ต๋๋ค.
๋ฐ๋ก ์์ํ ๊ฒ์~
MKMapViewDelegate
๋จผ์ ์ง๋ ์๊ฐ์ ๋งํฌ๋ฅผ ํ์ํ๋ ViewController์ MKMapViewDelegate๋ฅผ ์ฑํํด์ฃผ์ธ์!
class ViewController: UIViewController ,MKMapViewDelegate{
override func viewDidLoad() {
super.viewDidLoad()
mapView.delegate = self
}
๊ทธ๋ฆฌ๊ณค ์๋์ ๊ฐ์ด annotation์ MKAnnotationView๋ก ๋ฐํํด์ฃผ๋ ๋ฉ์๋๋ฅผ ๋ง๋ค์ด์ฃผ์ธ์!
func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
๊ทธ๋ฆฌ๊ณ ์ ํจ์์ annotationView๋ฅผ ๋ง๋ค์ด์ฃผ์๊ณ
์ํ๋ ์ด๋ฏธ์ง๋ฅผ ๋ฃ์ ์ด๋ฏธ์ง๋ทฐ์ ๋ ์ด๋ธ์ ๊ฐ๊ฐ ๋ง๋ค์ด์ค๋๋ค.
์ฌ๊ธฐ์ ๋ ์ด๋ธ์ y๊ฐ์ ๋ณด๋ฉด -35๋ผ๊ณ ๋์ด์๋๋ฐ์.
์ํ๋ ์์น์์ ์กฐ๊ธ ์์ ๋ ์ด๋ธ์ ๋์ฐ๊ธฐ ๋๋ฌธ์ ๋๋ค.
var annotationView: MKAnnotationView?
//์ํ๋ ์์น์ ๋ฃ์ ์ด๋ฏธ์ง๋ทฐ
let annotationimageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 25, height: 25))
let image = ์ํ๋ ์ด๋ฏธ์ง
annotationimageView.image = image
//์ํ๋ ์์น์ ๋ฃ์ ๋ ์ด๋ธ
let annotationLabel = UILabel(frame: CGRect(x: 0, y: -35, width: 45, height: 15))
annotationLabel.backgroundColor = .systemOrange
annotationLabel.textColor = .white
annotationLabel.numberOfLines = 3
annotationLabel.textAlignment = .center
annotationLabel.font = UIFont.boldSystemFont(ofSize: 10)
annotationLabel.text = annotation.title!
์์์ ๋ง๋ ์ด๋ฏธ์ง๋ทฐ์ ๋ ์ด๋ธ์ annotationView์ ์๋ธ๋ทฐ๋ก ์ถ๊ฐํด์ค๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง์ผ๋ก annotationView๋ฅผ ๋ฐํํด์ฃผ์ธ์.
annotationView?.addSubview(annotationimageView)
annotationView?.addSubview(annotationLabel)
return annotationView
}
์ด๋ ๊ฒ ํ๋ฉด ์๋์ ๊ฐ์ด ์ํ๋ ์ด๋ฏธ์ง์ ๊ทธ ์์ ์ํ๋ ๋ ์ด๋ธ์ด ๋ ์๋ ๋ชจ์ต์ ๋ณผ ์ ์์ต๋๋ค!
์ค๋์ ์ด๋ ๊ฒ ์ด๋ฏธ์ง์ ๋ ์ด๋ธ์ ์ํ๋ ์์น์ ๋์๋ณด๋ ๊ฒ์ ์์๋ณด์๋๋ฐ์.
ํน์๋ผ๋ ๊ถ๊ธํ ์ ์ด ์๊ฑฐ๋ ํ๋ฆฐ ๋ถ๋ถ์ด ์๋ค๋ฉด ๋๊ธ๋ก ์๋ ค์ฃผ์ธ์~!
๋๊ธ