// 공의 위치를 굴뚝으로 이동시킨다.
func dropBall() {
circle.position = funnel.position
}
onTapped
의 타입: () -> ()
(파라미터 X, 리턴 X 함수)dropBall()
의 경우 파라미터와 리턴값이 없으므로 onTapped
타입과 동일dropBall()
을 콜백 함수로 할당 가능// 굴뚝을 터치 시 dropBall() 함수 실행
// funnel.onTapped = dropBall() (X)
funnel.onTapped = dropBall
< control modifier >
public
: API 사용자에 의해 접근이 가능한 propertyprivate
: API 사용자에 의한 접근 차단
// 공이 다른 물체와 충돌 시 다른 물체의 색을 초록색으로 변경
func ballCollided(with otherShape: Shape) {
otherShape.fillColor = .green
}
onCollision
의 타입: (Shape) -> ()
(파라미터: Shape 타입, 리턴 X 함수)ballCollided(with:)
의 경우 Shape 타입의 파라미터를 가지므로 onCollision
타입과 동일ballCollided(with:)
을 콜백 함수로 할당 가능// 충돌한 물체가 파라미터로 입력된다.
// ball.onCollision = ballCollided 가능하지만 권장하지 않음
ball.onCollision = ballCollided(with:)
completion
의 타입: () -> ()
presentAlert(text:completion:)
실행 -> 새로운 함수 호출scene.presentAlert(text: "You won!", completion: alertDismissed)
# 알람이 울린 후, 아무 일도 일어나지 않음
func alertDismissed() {
}