"@UIApplicationMain"은 무엇을 의미합니까?
저는 방금 제 첫 번째 스위프트 프로젝트를 만들었습니다.AppDelegate.swift
클래스 선언 위에 줄이 있습니다. 왜 거기에 있습니까?!
...
import UIKit
import CoreData
@UIApplicationMain // <- WHY IS IT HERE?
class AppDelegate: UIResponder, UIApplicationDelegate {
...
그@UIApplicationMain
Swift의 속성을 합니다.main.m
프로젝트에서 발견된 은 「C」를입니다.)main
C 를 호출합니다.UIApplicationMain
Cocoa Touch 실행 루프 및 앱 인프라를 시작합니다.
Objective-C가 하는 ) 입니다.UIApplicationMain
중 하는 입니다.UIApplication
물건.Swift에서는 해당 클래스의 선언에 속성을 추가하여 이 클래스를 쉽게 지정할 수 있습니다.(계속 호출할 수도 있습니다.)UIApplicationMain
할 이유가 있으면 직접 기능합니다.를 Swift 서당그신은통최상코넣었습다니드에위에를화로 합니다.main.swift
file으)로 됩니다.
@UIApplicationMain
전용입니다.iOS 전용입니다.앱닙 X 파일이에 OS X에서는 Info.plist의 경우 (Swift의 경우 ObjC) 닙 파일이 . 하지만 OS X 스토리보드의 경우 메인 닙 파일이 없기 때문에@NSApplicationMain
거기서도 같은 일을 합니다.
@UIApplicationMain 특성은 응용 프로그램을 시작하기 위한 main.m 파일 및 진입점을 대체하는 것입니다.
이 @UIApplicationMain 없이 프로그램이 작동할 수 있는 한 가지 더 있습니다. 여러분이 해야 할 일은 코멘트 //@입니다.UIApplicationMain'은 목표 c에서 main.m과 동일한 main.swift를 만들고 코드 아래에 씁니다.그것이 당신의 지원의 시작점이 될 것입니다.
import Foundation
class FLApplication: UIApplication
{
override func sendEvent(event: UIEvent!)
{
println("Entry Point") // this is an example
}
}
AppDelegate.swift 소스 파일에는 두 가지 기본 기능이 있습니다.
앱의 진입점과 앱에 입력 이벤트를 전달하는 실행 루프를 만듭니다.이 작업은 파일의 맨 위에 나타나는 UIApplicationMain 특성(@UIApplicationMain)에 의해 수행됩니다.UIApplicationMain은 앱의 수명 주기 관리를 담당하는 애플리케이션 개체와 앱 위임 개체를 만듭니다.
AppDelegate 개체의 Blueprint인 AppDelegate 클래스를 정의합니다.앱 대리인은 앱의 콘텐츠가 그려진 창을 만들고 앱 내 상태 전환에 응답할 수 있는 위치를 제공합니다.AppDelegate 클래스는 사용자 지정 앱 레벨 코드를 작성하는 곳입니다.
이제 Swift 설명서가 업데이트되었으므로 다음과 같은 관련 구절이 있습니다.
NSA 응용 프로그램 기본
클래스에 이 특성을 적용하여 클래스가 응용 프로그램 대리자임을 나타냅니다.이 속성을 사용하는 것은 NSApplicationMain(::) 함수를 호출하고 이 클래스의 이름을 대리자 클래스의 이름으로 전달하는 것과 같습니다.
이 속성을 사용하지 않는 경우, NSApplicationMain(::) 함수를 호출하는 main() 함수와 함께 main.swift 파일을 제공합니다.예를 들어 앱이 NSA 응용 프로그램의 사용자 지정 하위 클래스를 주 클래스로 사용하는 경우 이 속성을 사용하는 대신 NSApplicationMain 함수를 호출합니다.
@UIApplicationMain은 이 클래스에 대한 자세한 정보를 제공하기 위해 아래에 선언된 클래스 AppDelegate에 적용되는 특성입니다.
이 경우 @UIApplicationMain 특성은 AppDelegate 클래스가 앱의 응용 프로그램 대리자임을 나타냅니다.
UIApplicationMain 클래스에 이 속성을 적용하여 클래스가 응용 프로그램 대리자임을 나타냅니다.이 속성을 사용하는 것은 UIApplicationMain 함수를 호출하고 이 클래스의 이름을 대리자 클래스의 이름으로 전달하는 것과 같습니다.(소스)
언급URL : https://stackoverflow.com/questions/24516250/what-does-uiapplicationmain-mean
'programing' 카테고리의 다른 글
presentModalViewController:애니메이션은 ios6에서 더 이상 사용되지 않습니다. (0) | 2023.08.18 |
---|---|
업데이트 데이터가 항상 영향을 받는 경우 mysql에 대해 typeorm(v.0.2.40)을 입력하는 이유: 1은 업데이트하지 않았지만? (0) | 2023.08.18 |
문자열 리소스 새 줄 /n을 사용할 수 없습니까? (0) | 2023.08.18 |
어떻게 봄에 같은 콩의 여러 인스턴스를 얻을 수 있습니까? (0) | 2023.08.18 |
특성 오류: '워크시트' 개체에 'set_column' 특성이 없습니다. (0) | 2023.08.18 |