첫 번째 iPhone 앱 만들기


첫 번째 iPhone 앱 만들기

이제 iOS 시뮬레이터에서 실행되는 간단한 보기 앱(빈 앱)을 만들어 보겠습니다.

단계는 다음과 같습니다.

1. Xcode를 열고 새 Xcode 프로젝트 만들기를 선택합니다.

XcodeWelcomePage

2 그런 다음 단일 보기 앱

CreateProject

3을 선택합니다. 제품 이름(예: 애플리케이션 이름, 조직 이름, 회사 식별자)을 입력합니다.

NewProjectCreateOptions

4 범위 밖의 리소스를 자동으로 해제하려면 계산 자동 적용을 선택했는지 확인하세요. 다음을 클릭하세요.

5. 프로젝트 디렉터리를 선택하고 Create

CreateProjectSelectFolder

6을 선택하면 아래와 같은 페이지가 표시됩니다#🎜🎜. #

XcodeProjectPage

화면 상단에서 방향, 세대, 출시를 설정할 수 있습니다. 배포 대상이 있으며 장치는 버전 4.3 이상의 배포 대상을 지원합니다. 이는 필수가 아니며 지금은 애플리케이션 실행에만 집중합니다.

7. 드롭다운 메뉴에서 iPhone 시뮬레이터를 선택하고 실행합니다.

runProject

8. 첫 번째 애플리케이션을 성공적으로 실행하면 아래와 같은 출력이 표시됩니다.

iPhoneSimulator1

배경색을 변경하여 인터페이스 빌더를 시작하세요. ViewController.xib를 선택합니다. 오른쪽의 배경 옵션을 선택하고 색상을 변경한 후 실행하세요.

InterfaceBuilder1

위 프로젝트에서는 기본적으로 배포 대상이 iOS6.0으로 설정되어 있으며 자동 레이아웃이 활성화됩니다.

iOS4.3 기기에서 애플리케이션이 정상적으로 실행될 수 있도록 애플리케이션 생성을 시작할 때 배포 대상을 수정했지만 자동 레이아웃을 비활성화하지 않으려면 필요합니다. 각 nib, 즉 xib 파일에 대한 파일 뷰어에서 자동으로 확인란을 선택 취소합니다.

Xcode 프로젝트 IDE의 다양한 부분은 다음과 같이 표시됩니다. (Apple Xcode4 사용자 문서)

Xcode4Workspace

파일 검사기는 위에 표시된 검사기 선택 막대에서 찾을 수 있으며 자동 레이아웃은 선택 취소할 수 있습니다. iOS 6.0 기기만 타겟팅하려는 경우 자동 레이아웃을 사용할 수 있습니다.

물론, iOS6에 추가 시 통장 기능 등 새로운 기능도 사용할 수 있습니다. 이제 배포 대상으로 iOS4.3을 사용합니다.



첫 번째 iOS 앱 코드를 자세히 살펴보세요.

5개의 다른 파일을 사용하여 아래와 같이 앱을 생성합니다.
  • AppDelegate.h
  • AppDelegate.m
  • ViewController.h
  • ViewController.m
  • ViewController.xib

간단한 코드를 설명하기 위해 한줄 주석(//)을 사용하였으며, 코드 아래에는 중요한 프로젝트 코드 설명이 나와 있습니다.

AppDelegate.h

// Header File that provides all UI related items. #import <UIKit/UIKit.h>  // Forward declaration (Used when class will be defined /imported in future)@class ViewController;  

 // Interface for Appdelegate@interface AppDelegate : UIResponder <UIApplicationDelegate>// Property window @property (strong, nonatomic) UIWindow *window; 
 // Property Viewcontroller@property (strong, nonatomic) ViewController *viewController;//this marks end of interface @end
코드 설명
  • AppDelegate는 UIResponder를 호출하여 Ios 이벤트를 처리합니다.
  • UIApplication 명령을 완료하고 시작, 종료 등과 같은 주요 애플리케이션 이벤트를 제공합니다.
  • UIWindow 객체를 사용하여 iOS 기기 화면의 다양한 관점을 관리하고 조정합니다. 다른 로딩 보기의 기본 보기와 같습니다. . 일반적으로 응용 프로그램에는 창이 하나만 있습니다.
  • 화면 흐름을 처리하는 UIViewController

AppDelegate.m

// Imports the class Appdelegate's interfaceimport "AppDelegate.h" // Imports the viewcontroller to be loaded#import "ViewController.h" // Class definition starts here@implementation AppDelegate // Following method intimates us the application launched  successfully - (BOOL)application:(UIApplication *)application 
 didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
    // Override point for customization after application launch.    self.viewController = [[ViewController alloc] 
	 initWithNibName:@"ViewController" bundle:nil];    self.window.rootViewController = self.viewController;    [self.window makeKeyAndVisible];    return YES;}- (void)applicationWillResignActive:(UIApplication *)application{    /* Sent when the application is about to move from active to inactive state.
    This can occur for certain types of temporary interruptions
    (such as an incoming phone call or SMS message)
    or when the user quits the application and it begins the transition to the 
    background state. Use this method to pause ongoing tasks, disable timers, 
    and throttle down OpenGL ES frame rates. Games should use this method 
    to pause the game.*/}- (void)applicationDidEnterBackground:(UIApplication *)application{    /* Use this method to release shared resources, save user data, invalidate 
    timers, and store enough application state information	to restore your
    application to its current state in case it is terminated later. If your 
    application supports background execution, this method is called instead 
    of applicationWillTerminate: when the user quits.*/}- (void)applicationWillEnterForeground:(UIApplication *)application{    /* Called as part of the transition from the background to the inactive state;
    here you can undo many of the changes made on entering the background.*/}- (void)applicationDidBecomeActive:(UIApplication *)application{    /* Restart any tasks that were paused (or not yet started) while the
    application was inactive. If the application was previously in the background, 
	optionally refresh the user interface.*/}- (void)applicationWillTerminate:(UIApplication *)application{    /* Called when the application is about to terminate. Save data if appropriate.
    See also applicationDidEnterBackground:. */}@end
코드 설명
  • UIApplication 정의는 여기에 있습니다. 위에 정의된 모든 메서드는 애플리케이션 UI 호출이며 사용자 정의 메서드를 포함하지 않습니다.
  • UIWindow 객체는 애플리케이션 할당 객체를 보유하기 위해 할당됩니다.
  • UIController는 창의 초기 보기 컨트롤러 역할을 합니다.
  • 창을 표시하려면 makeKeyAndVisible을 호출하세요.

ViewController.h

#import  // Interface for class ViewController@interface ViewController : UIViewController @end
코드 설명
  • ViewController 클래스는 UIViewController를 상속하고 iOS 애플리케이션을 위한 기본 보기 관리 모델을 제공합니다. . ㅋㅋㅋ