available
특정 Swift 버전 또는 특정 플랫폼 및 OS 버전과 관련된 선언의 생명주기를 나타낸다.
#available
여러 플랫폼에서 서로 다른 논리 처리를 결정하기 위해서 필요하다.
Bool
을 반환하는 런타임 검사로
런타임 중에 모드를 변경해도 반영이된다.
if #available(iOS 10.0, *) {
// iOS 10.0 이상이라면 이런 행동을 해라
} else {
// 아니면 이런 행동을 해라.
}
*
은 필수이다.
해당 버전을 포함하여 그 이상의 버전인지를 확인한다.
@available
함수(메소드), 클래스 또는 프로토콜 앞에 놓여서
타입 또는 프로토콜이 적용되는 플랫폼 및 OS 를 나타낸다.
@available(iOS 12, *)
func setupDoneButton() { }
메서드를 Swift, OS 버전 또는 플랫폼의 버전에 따라서 제한할 수 있다.
#available
과 다르게 컴파일 타임에 경고 또는 오류를 생성한다.
📚 Reference
Running code on a specific platform or OS version
Attributes
iOS) available 알아보기
버전별 분기처리 #available
iOS ) available