UIApplicationMain에 대한 자세한 설명

UIApplicationMain


이 함수는 main 진입점에서 호출되어 응용 프로그램 개체와 응용 프로그램 대리자를 만들고 이벤트 주기를 설정합니다.
int UIApplicationMain (
   int argc,
   char *argv[],
   NSString *principalClassName,
   NSString *delegateClassName
);

매개변수


인수


argv의 인수 개수, 일반적으로 main 에 해당하는 매개변수입니다.


argv


인수의 가변 목록, 일반적으로 main 에 해당하는 매개변수입니다.


교장 클래스 이름


UIApplication 클래스 또는 하위 클래스의 이름입니다. nil 를 지정하면 UIApplication가 가정됩니다.


델리게이트 클래스 이름


응용 프로그램 대리자가 인스턴스화되는 클래스의 이름입니다. principalClassName이 UIApplication 의 하위 클래스를 지정하는 경우 해당 하위 클래스를 대리자로 지정할 수 있습니다. 하위 클래스 인스턴스는 응용 프로그램 대리자 메시지를 수신합니다. 로드하는 경우 nil 지정 응용 프로그램의 기본 nib 파일에서 개체를 위임합니다.




반환 값
정수 반환형을 지정하더라도 절대 반환되지 않는 함수로, 사용자가 홈 버튼을 눌러 iPhone 애플리케이션을 종료하면 애플리케이션이 백그라운드로 이동합니다.


논의
이 함수는 주 클래스에서 응용 프로그램 개체를 인스턴스화하고 지정된 클래스에서 대리자(있는 경우)를 인스턴스화하고 응용 프로그램에 대한 대리자를 설정합니다.또한 응용 프로그램의 실행 루프를 포함하여 기본 이벤트 루프를 설정하고 이벤트 처리를 시작합니다. .응용 프로그램의 Info.plist 파일이 NSMainNibFile 키와 값에 대한 유효한 nib 파일 이름을 포함하여 로드할 기본 nib 파일을 지정하면 이 함수는 해당 nib 파일을 로드합니다.
선언된 반환 유형에도 불구하고 이 함수는 절대 반환하지 않습니다.이 함수의 동작 방식에 대한 자세한 내용은 iOS 응용 프로그래밍 가이드의 "핵심 응용 프로그램 설계"를 참조하십시오.


유효성

iOS 2.0 이상에서 사용 가능


관련 샘플 코드

AQOfflineRenderTest 국제산맥 SimpleNetworkStreams SpeakHere 테이블뷰 스위트


선언
UIApplication.h




=================================邪恶的分割线=================================

对于UIKIT_EXTERN int UIApplicationMain(int argc, char *argv[], NSString *principalClassName, NSString *delegateClassName)的后面两个参数,一般都为nil,它代表的含义是:第三个参数默认为是@"UIApplication",这个参数必须是UIApplication或其子类的名字,它代表着当前iPhone程序本身,这个程序会去读info.plist文件获取配置信息,一个重要的信息是Main nib file base name(主nib文件)的值,一般为MainWindow(.xib),第四个参数为MainWindow.xib文件中遵循UIApplicationDelegate的类的类名,因为UIApplication定义了一个delegte变量,这个变量应该遵循UIApplicationDelegate,负责控制程序的运行,在主nib文件中,你应该创建一个继承于Object,并遵循UIApplicationDelegate的类,如果主nib文件没有这个类,你应该自定义一个这样的类,并将第四个参数改为这个类的类名,否则这个程序不知道如何进行运作,因为前三个参数代表应用程序本身,它除了把应用的事件循环启动起来,并读取info.plist里的配置信息,不做其它任何事情。

좋은 웹페이지 즐겨찾기