2010년 2월 26일 금요일

2010년 2월 25일 목요일

UIApplication Class Reference

UIApplication Class Reference

[P] Parameters 에 대한 설명 입니다.
[R] Return Value 대한 설명 입니다.

Getting the Application Instance
+ sharedApplication
싱글톤 애플리케이션 인스턴스를 리턴.
UIApplicationMain 함수에서 생성된 어플리케이션 인스턴스를 리턴한다.


Getting Application Windows
  •   keyWindow  property
  • @property(nonatomic, readonly) UIWindow *keyWindow
  • 어플리케이션의 키 윈도우(읽기 전용)
  • 이 속성은 windows 배열에서 가장 최근에 makeKeyAndVisible 메시지를 보낸 UIWindow오브젝트를 담고 있다.
  •   windows  property
  • @property(nonatomic, readonly) NSArray *windows
  • 애플리케이션에 보이는 윈도우(읽기 전용)
  • 이 속성은 애플리케이션에 보이는 윈도우 들을 담고있는 배열이다.
  • 이 윈도우들은 뒤에서 앞 순서로 되어 있다.


Controlling and Handling Events
  • – sendEvent:
  • - (void)sendEvent:(UIEvent *)event
  • 애플리케이션에서 응답 오브젝트로 사용할 이벤트를 디스패치한다.
  • [P] event : 터치이벤트를 포함해서, 이벤트에 대한 정보를 캡슐화하는 UIEvent 오브젝트.
  • 서브클래스들은 검사및 특정 디스패칭하는 이벤트가 들어올때 가로채기 위해서 이 메서드를 오버라이드 해야 합니다.
  • iPhone OS는 퍼블릭 이벤트일때만 이 메서드를 호출합니다.
  • – sendAction:to:from:forEvent:
  • - (BOOL)sendAction:(SEL)action to:(id)target from:(id)sender forEvent:(UIEvent *)event
  • 특정 타겟에 셀렉터로 식별하는 액션 메시지를 보낸다
  • 원래 이 메서드는 사용자가 터치한 UIControl오브젝트에 의해 호출된다.
    기본 구현은 타겟 오브젝트에 주어지는 액션메서드를 디스패치 하는 것입니다. 타겟이 없을 경우에는 first responder를 타겟으로 한다.
    서브클래스들은 액션메시지의 특별한 디스패칭 동작을 수행하기 위해서 이 메서드를 오버라이드 해야 한다.
    기본적으로, 타겟이 호출할 때 이 메서드에 두개의 파라미터들을 주게 된다. 마지막 두개의 파라미터들은 리시버를 위한 옵션 이다.
    이 파라미터들을 지우는 것은 호출하는 쪽에 (보통 UIControl 오브젝트) 달려있기 때문이다.
    이것은 다음에 나오는 것들 중 하나의 액션 셀렉터로 구성 할 수 있다:
    -(void)action:
    -(void)action:(id)sender
    -(void)action:(id)sender forEvent:(UIEvent *)event
  • [P]
    • action : 액션메서드를 식별하는 셀렉터.
    • target : 액션 메시지를 받는 오브젝트. target이 nil일 경우, 애플리케이션은 리스폰더 체인이 처리될때까지 처리가 진행되는 곳에서 first responder에 메시지를 보낸다.
    • sender : 액션 메시지를 보내는 오브젝트. 기본 sender는 이 메서드를 호출하는 UIControl오브젝트 이다.
    • event : 액션 메시지가 시작되는 이벤트에 관한 정보를 캡슐화하는 UIEvent 오브젝트.
  • [R]
  • YES : 리스폰더 오브젝트가 액션메시지를 처리함
  • NO : 메시지를 처리하는 리스폰더 체인 오브젝트가 없을 경우
  • – beginIgnoringInteractionEvents
  • - (void)beginIgnoringInteractionEvents
  • 터치와 관련된 이벤트들의 처리를 서스펜드하도록 리시버에게 알린다.
  • 특히 애니메이션이나 트랜지션이 시작되기 전에 이 메소드를 호출한다.
  • 호출은 endIgnoringInteractionEvents 메서드와 내포된다.
  • – endIgnoringInteractionEvents
  • - (void)endIgnoringInteractionEvents
  • 터치와 관련된 이벤트들의 처리를 resume하도록 리시버에게 알린다.
  • 특히, beginIgnoringInteractionEvents메서드를 호출한 후, 애니메이션이나 트랜지션이 완료되었을 때 이 메서드를 호출한다.
  • 이 메서드의 내포된 호출은 beginIgnoringInteractionEvents 메서드의 내포된 호출과 매치되어야 한다.
  • – isIgnoringInteractionEvents
  • - (BOOL)isIgnoringInteractionEvents
  • 리시버가 스크린을 터치함에 따라 초기화된 이벤트들을 무시하는지 여부를 리턴한다.
  • [R] YES : 리시버가 인터렉션 이벤트들을 무시함. 그 밖에는 NO.
  •     레벨깊이가 최소한 하나인 중첩된 beginIgnoringInteractionEvents와 endIgnoringInteractinoEvents의 호출은 YES를 리턴한다.
  •   applicationSupportsShakeToEdit  property
  • @property(nonatomic) BOOL applicationSupportsShakeToEdit
  • 디바이스 디스플레이를 흔들어서 undo-redo 사용자 인터페이스를 나타내는 지 여부를 결정하는 Boolean
  • 디폴트 값은 YES임. 이 속성을 NO로 설정하면 애플리케이션에서 디바이스를 흔들어도 Undo / Redo 버튼이 나타나지 않는다.
  •   proximitySensingEnabled  property
  • @property(nonatomic, getter=isProximitySensingEnabled) BOOL proximitySensingEnabled
  • 접근센서가 사용가능한지를 결정하는 Boolean
  • (권장되지 않음. 속성은 UIDevice 클래스의 proximityMonitoringEnagled proximityState 대체해서 사용한다.)
  • 접근센서가 사용가능하면 YES, 불가능하면 NO. 
  • 사용가능한 접근 센서는 사용자의 얼굴이 가까워지면 iPhone OS가 스크린을 비우도록 한다.
  • 접근센서는 기본적으로 사용할 수 없게 되어 있다.
Opening a URL Resource
  • – openURL:
  • - (BOOL)openURL:(NSURL *)url
  • 특정 URL에서 리소스를 열도록 한다.
  • URL은 같거나 다른 애플리케이션에 리소스를 위치시킬 수 있다.
  • 만약 다른 애플리케이션의 리소스인 경우, 다른 애플리케이션도 런치되어야 하므로, 이 메소드를 호출하면 애플리케이션이 종료될 것이다.
  • 리소스를 제어하는 애플리케이션이 있는지 확인하기 위해 openURL: 메서드를 호출하기 전에 canOpenURL:을 호출할 수 있다.
  • [P] url : URL(Universal Resource Locator) 나타내는 오브젝트.
  •             UIKit http:, https:, tel:, mailto: 스키마들을 제공한다.
  • [R] URL 해당하는 리소스 위치가 성공적으로 열릴 경우 YES. 아니면 NO.
  • – canOpenURL:
  • - (BOOL)canOpenURL:(NSURL *)url
  • 애플리케이션이 주어진 URL의 리소스를 열수 있는지 여부를 리턴
  • 이 메소드는 openURL: 이 호출되었을때, 다른 애플리케이션에서 이것을 제어하기 위해 런치될 것인지를 보장해 준다.
  • 이것은 전체 URL이 유효한 것인지는 보장하지 않는다.
  • [P] url : 주어진 리소스를 식별하는 URL 오브젝트. URL의 스키마 -- 커스텀 스키마로 가능한 -- 는  URL을 제어할 수 있는 애플리케이션을 식별한다.
  • [R] URL을 승인할 수 있는 어플리케이션이 없을 경우 NO, 아니면 YES 를 리턴한다.
Registering for Remote Notifications
  • – registerForRemoteNotificationTypes:
  • - (void)registerForRemoteNotificationTypes:(UIRemoteNotificationType)types
  • Apple Push Service를 통하는 공급자(provider)로 부터 특정 형태의 노티피케이션을 받도록 등록한다.
  • 이 메시지를 보낼 때, 디바이스는 Apple Push Service에 등록 프로세스를 초기화 한다. 이것이 성공하면, 애플리케이션 델리게이트는 application:didRegisterForRemoteNotificationsWithDeviceToken: 메서드에서 디바이스 토큰을 받는다.; 만약 등록이 성공하지 못하면, 델리게이트는 application:didFailToRegisterForRemoteNotificationWithError: 메서드를 통해 알려진다.  만약에 애플리케이션 델리게이트가 디바이스 토큰을 받으면, 그것의 제공자에 연결해서 토큰을 넘겨줘야 한다.
  • [P] types : 애플리케이션이 승인하는 노티피케이션의 비트 마스크 하는 특정 형태.
  • – unregisterForRemoteNotifications
  • - (void)unregisterForRemoteNotifications
  • Apple Push Service로부터 받는 노티피케이션들을 등록해제 한다.
  • – enabledRemoteNotificationTypes
  • - (UIRemoteNotificationType)enabledRemoteNotificationTypes
  • 애플리케이션이 승인하는 노티피케이션들의 형태를 리턴한다.
  • [R] 애플리케이션에 사용자가 요청한 노티피케이션의 형태들을 나타내는 값들에 대한 비트 마스크.

Managing Application Activity
  •   idleTimerDisabled  property
  • @property(nonatomic, getter=isIdleTimerDisabled) BOOL idleTimerDisabled
  • 아이들 타이머가 애플리케이션에서 비활성화 되어있는지를 제어하는 Boolean 값.

Managing Status Bar Orientation
  • – setStatusBarOrientation:animated:
  • - (void)setStatusBarOrientation:(UIInterfaceOrientation)interfaceOrientation animated:(BOOL)animated
  •  애플리케이션의 상태바를 특정 오리엔테이션으로 설정하고 움직임 변화를 것인지 옵션으로 설정할 있다.
  • animated NO 설정할 경우 애니메이션 없이 곧바로 변경된다.
  •   statusBarOrientation  property
  • @property(nonatomic) UIInterfaceOrientation statusBarOrientation
  • 애플리케이션 상태바의 현재 오리엔테이션
  •   statusBarOrientationAnimationDuration  property
  • 90 오리엔테이션 변경이 있는 동안 상태바가 애니메이션되는 시간(초단위, 읽기 전용)

Controlling Application Appearance
  • – setStatusBarHidden:animated:
  • - (void)setStatusBarHidden:(BOOL)hidden animated:(BOOL)animated
  • 상태바를 숨기거나 보여줌. 애니메이션 트랜지션은 옵션.
  • [P] hidden YES 상태바가 숨겨지고, NO 보임. 기본값은 NO
  •   statusBarHidden  property
  • @property(nonatomic, getter=isStatusBarHidden) BOOL statusBarHidden
  • 상태바가 숨겨져 있는지 아닌지 알려주는 Boolean
  • [P] YES - 숨겨짐, NO - 보임
  • – setStatusBarStyle:animated:
  • - (void)setStatusBarStyle:(UIStatusBarStyle)statusBarStyle animated:(BOOL)animated
  • 상태바의 스타일 설정. 새로운 스타일로 변할때 애니메이션 트랜지션을 것인지는 옵션.
  • statusBarStyle - 상태바 스타일을 결정하는 상수값.
  • * UIStatusBarStyle 종류
    • UIStatusBarStyleDefault : 회색 스타일(기본)
    • UIStatusBarStyleBlackTranslucent : 투명한 검정 스타일(50% 알파)
    • UIStatusBarStyleBlackOpaque : 불투명한 검정 스타일

  •   statusBarStyle  property
  • @property(nonatomic) UIStatusBarStyle statusBarStyle
  • 상태바의 현재 스타일
  •   statusBarFrame  property
  • @property(nonatomic, readonly) CGRect statusBarFrame
  • 상태바 영역으로 정의된 사각 프레임
  •   networkActivityIndicatorVisible  property
  • @property(nonatomic, getter=isNetworkActivityIndicatorVisible) BOOL networkActivityIndicatorVisible
  • 네트워크 액티비티의 온/오프 값 변경 상태를 가지는 Boolean 값.
  •   applicationIconBadgeNumber  property
  • @property(nonatomic) NSInteger applicationIconBadgeNumber
  • Springboard 에서 애플리케이션 아이콘의 뱃지로 현재 설정한 넘버
  • 0으로 설정하면 뱃지 넘버를 숨긴다. 기본값은 0.


Setting and Getting the Delegate
  •   delegate  property
  • @property(nonatomic, assign) id delegate
  • 애플리케이션 오프젝트의 델리게이트. 
  • 이 델리게이트는 반드시 UIApplicateDelegate 프로토콜을 따라야 한다.  
  • UIApplication은 델리게이트를 배정하고 리테인 하지 않는다.

2010년 2월 23일 화요일

CoreData

  코어 데이터는 코드 작성 없이 애플리 케이션의 데이터 모델을 시각적으로 설계할 수 있도록 해주는 애플의 도구이다.
  애플은 아이폰 SDK 3부터 코어 데이터를 지원하기 시작했다.

[프로젝트 생성]

  • Xcode에서 New Project 창을 연다.
  • Window-based Application 템플릿을 선택하고, 하단에 있는 Use Core Data for storage 옵션을 체크한 후 Choose... 버튼을 클릭한다.
  • 프로젝트명을 쓰고 프로젝트를 생성합니다.

프로젝트를 생성하고 보면, Resources폴더에 *.xcdatamodel이라는 이름의 파일이 있습니다.
이 파일은 데이터 모델 파일이며, 이 파일을 열면 데이터모델 편집기가 실행되는 것을 볼 수 있습니다.
(세부 창 숨기기 shift+command+E)


  코코아에서 데이터 모델을 생성하는 일반적인 방법은 NSObject의 하위클래스를 만들어서 NSCoding과 NSCopying을 따르게 하여 아카이브로 만드는 것입니다.
  하지만 코어 데이터에서는 클래스 대신 데이터 모델 편집기에서 엔티티를 생성하고, 엔티티에서 관리객체를 만드는 코드를 작성합니다.

  엔티티는 속성, 관계, 페치드 프로퍼티, 페치 리쿼스트 총 4개 타입의 프로퍼티로 구성되며, Xcode의 모델 편집기를 통해 정의된다. 페치 리쿼스트는 데이터 모델 편집기나 소스코드에서 미리 정의될 수 있습니다.
  • 속성 : 오브젝티브 C 클래스의 인스턴스 변수에 해당하는 코어 데이터 엔티티의 함수. 데이터 저장에 사용
  • 관계 : 엔티티 사이의 관계를 정의. 관계는 하나 혹은 그 이상일 수 있음.
  • 페치드 프로퍼티 : 관계와 동시에 사용될 수 없다. 즉, 둘중 하나를 선택해 사용해야 함.  관계와의 차이점은 로딩방식이 다르다는 것인데, 관계의 경우 한속성이 로드될때 그와 관계된 다른 속성도 같이 로드되지만, 페치드 프로퍼티는 다른 속성에 접근하지 않는한 연관된 다른속성은 한꺼번에 로드되지 않음.
  • 페치 리퀘스트 : 미리 정의된 쿼리.

[관리객체 가져오기]

  저장소에서 관리객체를 가져오려면 페치 리쿼스트를 하나 만들고 객체의 엔티티나 가져오길 원하는 객체를 명시한 NSEntityDescription을 사용하여 요청해야 합니다.

예]
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entityDescr = [NSEntityDescription entityForName:@"EntityName"
                                                          inManagedObjectContext:context];
[request setEntity:entityDescr];

  필요하다면 NSPredicate를 사용한 페치 리퀘스트의 조건을 명시할 수 있습니다.
  NSPredicate는 페치 리퀘스트의 실행 결과를 만들기 위해 필요한 기준을 정의하기 위해 사용되며 SQL문과 유사합니다.

예]
NSPredicate *pred = [NSPredicate predicateWithFormat:@"(name = %@)",nameString];
[request setPredicate:pred];

  첫줄에 생성한 NSPredicate는 페치 리퀘스트에 명시된 엔티티의 모든 객체를 가져오는 대신 name 프로퍼티에 nameString 값이 저장되어 있는 객체만을 가져오게 합니다.

  엔티티 디스크립션과 함께 페치 리퀘스트를 생성하고 나면 NSManagedObjectContext:인스턴스 메서드를 사용하여 패치 리퀘스트를 실행합니다.

예]
NSError *error;
NSArray *objects = [context executeFetchRequest:request error:&error];
if(objects == nil){
  //handle error
}

  executeFetchRequest:error:는 저장소로부터 특정 객체를 불러올 것이며 배열을 통해 객체를 반환할 것입니다.
  만일 에러가 발생하면 배열 대신 nil값을 반환받게 될 것이고 인자로 사용한 error 포인터는 에러의 내용이 담긴 NSError 객체를 가리키게 될 것입니다.
  에러가 발생하지 않으면 명시된 기준과 일치하는 데이터가 없어서 아무런 값을 담고 있지 않더라도 제대로 된 배열을 받환받게 될 것입니다.
  배열을 받환받는 시점부터 배열 안의 관리객체에 대한 모든 변경 내용은 관리객체 컨텍스트에 의해 기록될 것이며 컨텍스트에 save:메시지를 보내면 저장될 것입니다.


2010년 2월 22일 월요일

UIViewController Tasks












Creating a View Controller Using Nib Files

  • – initWithNibName:bundle:
  • - (id)initWithNibName:(NSString *)nibName bundle:(NSBundle *)nibBundle
  • 특정 번들의 nib파일과 새롭게 초기화된 뷰 컨트롤러를 리턴
  •   nibName  property
  • 리시버의 nib파일 이름을 리턴.(읽기 전용)
  •   nibBundle  property
  • 리시버의 nib 번들이 존재한다면 그의 이름을 리턴한다.(읽기 전용)




Managing the View

  •   view  property
  • 컨트롤러가 관리하는 뷰
  • – loadView
  • - (void)loadView
  • 컨트롤러가 관리하는 뷰를 생성
  • – viewDidLoad
  • - (void)viewDidLoad
  • 컨트롤러의 뷰가 메모리에 로드된 후에 호출됨
  • – viewDidUnload
  • - (void)viewDidUnload
  • 컨트롤러의 뷰가 메모리로부터 릴리즈 되었을 때 호출됨
  • – isViewLoaded
  • - (BOOL)isViewLoaded
  • 뷰가 현재 메모리에 로드 되었는지를 나타내는 불린값 리턴.
  •   title  property
  • 컨트롤러가 관리하는 뷰를 나타내는 지역화된 문자열.(NSString)
  • 리시버가 네비게이션 컨트롤러인 경우 탑 뷰 컨트롤러의 타이틀이 기본값이 됨.





Responding to View Events

  • – viewWillAppear:
  • - (void)viewWillAppear:(BOOL)animated
  • 윈도우에 뷰가 추가 될 것인지 뷰 컨트롤러에 알려줌
  • – viewDidAppear:
  • - (void)viewDidAppear:(BOOL)animated
  • 윈도우에 뷰가 추가 되었는지 뷰 컨트롤러에게 알려줌
  • – viewWillDisappear:
  • - (void)viewDidDisappear:(BOOL)animated
  • 뷰가 해제되거나, 가려지거나, 숨겨질 것을 뷰 컨트롤러에게 알려줌
  • – viewDidDisappear:
  • - (void)viewDidDisappear:(BOOL)animated
  • 뷰가 해제 되거나, 가려지거나, 숨겨졌을 경우 뷰 컨트롤러에게 알려줌





Configuring the View’s Layout Behavior

  •   wantsFullScreenLayout  property
  • @property(nonatomic,assign) BOOL wantsFullScreenLayout
  • 뷰가 상태바를 가릴 것인지 아닌지를 알려주는 불린값




Configuring the View Rotation Settings

  •   interfaceOrientation  property
  • @property(nonatomic, readonly) UIInterfaceOrientation interfaceOrientation
  • 인터페이스의 현재 오리엔테이션(읽기 전용)
  • * UIInterfaceOrientation 에 들어갈 수 있는 값의 종류
  •    UIInterfaceOrientationPortrait                        세로모드
  •    UIInterfaceOrientationPortraitUpsideDown      뒤집힌 세로모드
  •    UIInterfaceOrientationLandscapeLeft              왼쪽으로 돌린 가로모드(홈버튼 왼쪽)
  •    UIInterfaceOrientationLandscapeRight             오른쪽으로 돌린 가로모드(홈버튼 오른쪽)
  • – shouldAutorotateToInterfaceOrientation:
  • -(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
  • 뷰 컨트롤러가 해당 인터페이스 오리엔테이션 대로 오토로테이트 할 수 있는지를 나타내는 불린값을 리턴
  • – rotatingHeaderView
  • - (UIView *)rotatingHeaderView
  • 사용자 인터페이스가 회전할 때 헤더뷰를 리턴. 헤더뷰가 없을 때는 nil리턴.
  • 뷰 컨트롤러가 탭바일 경우에는 선택된 탭의 뷰 컨트롤러의 헤더뷰를 리턴한다.
  • 현재 뷰 컨트롤러가 네비게이션 컨트롤러일 경우에는 관련된 네비게이션 바를 리턴한다.
  • – rotatingFooterView
  • - (UIView *)rotatingFooterView
  • 사용자 인터페이스가 회전할 때 footer뷰를 리턴.
  • 뷰 컨트롤러가 탭바일 때는 뷰가 가지고 있는 탭바를 리턴.
  • 뷰 컨트롤러가 네비게이션 컨트롤러일 때는 탑 뷰 컨트롤러의 footer뷰를 리턴.
  • 키보드가 활성화 되어 있을 때는 키보드를 리턴하고, 그 밖의 경우에는 nil을 리턴한다.




Responding to View Rotation Events

  • – willRotateToInterfaceOrientation:duration:
  • - (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
  • 이전 유저 인터페이스가 회전하기 시작했음을 뷰 컨트롤러에 보냄
  • – willAnimateRotationToInterfaceOrientation:duration:
  • – didRotateFromInterfaceOrientation:
  • – willAnimateFirstHalfOfRotationToInterfaceOrientation:duration:
  • – didAnimateFirstHalfOfRotationToInterfaceOrientation:
  • – willAnimateSecondHalfOfRotationFromInterfaceOrientation:duration:





Handling Memory Warnings

  • – didReceiveMemoryWarning



Presenting Modal Views

  •   modalViewController  property
  •   parentViewController  property
  •   modalTransitionStyle  property
  • – presentModalViewController:animated:
  • – dismissModalViewControllerAnimated:




Configuring Navigation Items

  •   navigationController  property
  •   navigationItem  property
  •   editing  property
  • – setEditing:animated:
  • – editButtonItem
  •   hidesBottomBarWhenPushed  property





Configuring the Navigation Controller’s Toolbar

  • – setToolbarItems:animated:
  • - (void)setToolbarItems:(NSArray *)toolbarItems animated:(BOOL)animated
  • 뷰 컨트롤러에 표시될 툴바 아이템 설정
  • toolbarItems = 내장 툴바에 표시될 툴바 아이템들
  • animated = YES일 경우에 툴바에서 아이템이 변하는 애니메이션을 사용한다.
  •   toolbarItems  property
  • @property (nonatomic, retain) NSArray *toolbarItems
  • 뷰 컨트롤러에 관련된 툴바 아이템들.
  • 이 속성은 UINavigationController오브젝트와 연관된 UIBarButtonItem 오브젝트의 배열을 포함한다.
  • 이 뷰 컨트롤러가 네비게이션 컨트롤러 인터페이스 안에 임베드 되어 있다면, 그리고 네비게이션 컨트롤러가 툴바를 나타내고 있다면, 이 속성은 그 툴바에 나타나는 아이템들을 식별한다.
  • 당신은 이 속성을 명확하게 설정할 수 있습니다.
  • 또는 setToolbarItems:animated: 메소드로 툴바 아이템류의 변화 동작을 사용할 수 있습니다.





Configuring Tab Bar Items

  •   tabBarController  property
  • @property(nonatomic, readonly, retain) UITabBarController *tabBarController
  • 탭바 컨트롤러의 부모나 조상(읽기 전용)
  • 탭바 컨트롤러가 추가된 리시버라면, 이 속성은 탭바 컨트롤러이다.
  • 리시버가 탭바 컨트롤러가 추가된 네비게이션 컨트롤러인 경우 이 속성은 네비게이션 컨트롤러의 탭바 컨트롤러이다.
  • 부모에 탭바가 없거나 리시버가 모달 뷰인 경우 이 속성은 nil이다.
  •   tabBarItem  property
  • @property(nonatomic, retain) UITabBarItem *tabBarItem
  • 탭바 컨트롤러가 추가되었을 때 뷰 컨트롤러에 나타나는 탭 바 아이템.
  • 기본값은 뷰 컨트롤러의 타이틀에 표시되는 탭바 아이템이다.
  • 이 속성에 처음 접근 했을 때는 UITabBarItem이 생성된다.








Getting the Search Display Controller

  •   searchDisplayController  property
  • @property(nonatomic, readonly, retain) UISearchDisplayController *searchDisplayController
  • 뷰 컨트롤러와 관련된 서치 디스플레이 컨트롤러(읽기 전용)






http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#jumpTo_44

Mac City

http://macciti.com/

맥에서 CHM 파일 보기(Mac chm file viewer)

윈도우에서 도움말 파일이나 또는 책(book)파일로 chm파일이 있는데 이것은 윈도우용 파일이다.

이것을 맥에서 보려면

http://sourceforge.net/projects/chamonix/

위 파일을 다운 받아서 보면 된다.


2010년 2월 19일 금요일

SQLite 관련 참고 사이트

SQLite3 C API 소개
http://www.sqlite.org/cintro.html

SQLite SQL 언어 가이드
http://www.sqlite.org/lang.html

2010년 2월 18일 목요일

iPhone 개발사이트[국내]

Korea iPhoneOS Dev Group
http://www.iphoneos.co.kr/

OSXDEV iPhone 개발 포럼
http://www.osxdev.org/forum/viewforum.php?f=13

OSXDEV WIKI
http://wiki.osxdev.org/index.php

OS X에서 Cocoa  맛보기 iPhone
http://www.cocoadev.co.kr/category/iPhone

Studio OrangeGear
http://blog.orangegear.co.kr/


 
참고 : http://susukang98.springnote.com/pages/4819079
http://zzion.tistory.com/

iPhone 개발사이트 [해외]

== Web Site ==
Objective C
http://www.otierney.net/objective-c.html

iPhone Developer Program
https://developer.apple.com/iphone/program/

The iPhone Developer - an excellent iPhone and iPod development guide
(소스코드도 있음)
http://www.theiphonedev.com/



== Forum ==
iPhone Dev SDK - The Community for the iPhone Developer Community
http://www.iphonedevsdk.com/forum/


== Blog ==
Dev-team Blog
http://blog.iphone-dev.org/

iPhone Programming by iCodeBlog
http://icodeblog.com/

[iPhone developer:tips];
http://iphonedevelopertips.com/

iPhone Development Bits.com
http://iphonedevelopmentbits.com/

iPhone Development Blog - Tips and Tricks for iPhone SDK Developers
http://iphoneincubator.com/blog/

How to Make iPhone Apps
http://howtomakeiphoneapps.com/

App every day in August!
http://appeveryday.wordpress.com/



참고 :
http://susukang98.springnote.com/pages/4819079
http://theappleblog.com/2009/06/01/43-iphone-development-resources/
http://www.theflyingjalapenolives.com/2009/05/my-greatest-iphone-development-resource/



기타 개발 사이트

The Code Project
http://www.codeproject.com/

Mobile Phone Development
http://www.mobilephonedevelopment.com/

LG Mobile Developer Network
http://developer.lgmobile.com/

Mobile Development and Design Magazine(MD&D)
http://mobiledevdesign.com/

Adobe Mobile & Devices Developer Center
http://www.adobe.com/devnet/devices/

Mobile Development - Bytes
http://bytes.com/topic/mobile-development/


아이튠즈에서 볼 수 있는 아이폰 강의
http://deimos3.apple.com/WebObjects/Core.woa/Browse/itunes.stanford.edu.3124430053.03124430055

Notification

  노티피케이션은 객체 간에 서로 커뮤니케이션을 할 수 있도록 만들어진 간단한 메커니즘이다.

  모든 객체는 1개 이상의 노티피케이션을 정의할 수 있으며 그것은 애플리케이션의 노티피케이션 센터(Notification Center)에서 발급된다.

  노티피케이션 센터란 객체들 사이에 노티피케이션을 넘겨주기 위해 존재하는 싱글턴 객체이다.

  일반적으로 노티피케이션은 이벤트와 노티피케이션을 발급한 객체가 전달되었다는 것을 알려주는 표시이다.

  예를 들어 아래의 그림을 보면 UIApplication 클래스가 발급하는 노티피케이션들을 볼 수 있을 것이다.


  대부분 노티피케이션은 이름을 통해 용도를 유추할 수 있지만, 이름으로 용도를 유추할 수 없는 노티피케이션이 있다면 도큐멘테이션 브라우저에서 검색하여 용도를 확인할 수 있다. 





자료 출처 : 시작하세요! 아이폰 3 프로그래밍

2010년 2월 17일 수요일

[Blendtec] iPhone 3G의 굴욕

믹서기 회사인 블렌텍은 유투브에 아래와 같은 동영상을 올려서 회사 매출이 20%나 증가했다고 합니다. 그라운드 스웰을 잘 활용한 대표적 사례로 꼽히고 있다고 하죠.
콜라캔, 아이폰, 이미테이션 다이아몬드, 볼펜, Wii 리모컨 등.. 안갈아 내는게 없습니다.




뭐.. 매출 올리는 것도 좋긴 한데.. 꼭 저렇게 멀쩡한걸 갈아야 하는가 싶기도 하고..
가끔 홈쇼핑에서 믹서기 광고할때 벽돌 가는거 까진 많이 봤는데 말이죠.

당신은 대인배.. ㅡ_ㅡb

이분 꽤 유명한가 봅니다.
아이폰좀 달라니깐 내껀 안된다고 하는걸 보니..ㅋㅋ

아무래도 믹서기 사용의 위험한 예(?) 이다 보니..
동영상마다 항상 등장하는 말이, "집에서 하지 마세요"
그리고 다 갈아버린 후에 "들이마시지 마세요" 군요.

믹서기 성능이 아무리 좋아도 따라하진 마세요.
저거 따라하다 다치면 엄마한테 욕먹습니다.

English country names and code elements

This list states the country names (official short names in English) in alphabetical order as given in ISO 3166-1 and the corresponding ISO 3166-1-alpha-2 code elements.
This list is updated whenever a change to the official code list in ISO 3166-1 is effected by the ISO 3166/MA.
It lists 246 official short names and code elements.



Country namesISO 3166-1-alpha-2 code
A
AFGHANISTANAF
ÅLAND ISLANDSAX
ALBANIAAL
ALGERIADZ
AMERICAN SAMOAAS
ANDORRAAD
ANGOLAAO
ANGUILLAAI
ANTARCTICAAQ
ANTIGUA AND BARBUDAAG
ARGENTINAAR
ARMENIAAM
ARUBAAW
AUSTRALIAAU
AUSTRIAAT
AZERBAIJANAZ
B
BAHAMASBS
BAHRAINBH
BANGLADESHBD
BARBADOSBB
BELARUSBY
BELGIUMBE
BELIZEBZ
BENINBJ
BERMUDABM
BHUTANBT
BOLIVIA, PLURINATIONAL STATE OFBO
BOSNIA AND HERZEGOVINABA
BOTSWANABW
BOUVET ISLANDBV
BRAZILBR
BRITISH INDIAN OCEAN TERRITORYIO
BRUNEI DARUSSALAMBN
BULGARIABG
BURKINA FASOBF
BURUNDIBI
C
CAMBODIAKH
CAMEROONCM
CANADACA
CAPE VERDECV
CAYMAN ISLANDSKY
CENTRAL AFRICAN REPUBLICCF
CHADTD
CHILECL
CHINACN
CHRISTMAS ISLANDCX
COCOS (KEELING) ISLANDSCC
COLOMBIACO
COMOROSKM
CONGOCG
CONGO, THE DEMOCRATIC REPUBLIC OF THECD
COOK ISLANDSCK
COSTA RICACR
CÔTE D'IVOIRECI
CROATIAHR
CUBACU
CYPRUSCY
CZECH REPUBLICCZ
D
DENMARKDK
DJIBOUTIDJ
DOMINICADM
DOMINICAN REPUBLICDO
E
ECUADOREC
EGYPTEG
EL SALVADORSV
EQUATORIAL GUINEAGQ
ERITREAER
ESTONIAEE
ETHIOPIAET
F
FALKLAND ISLANDS (MALVINAS)FK
FAROE ISLANDSFO
FIJIFJ
FINLANDFI
FRANCEFR
FRENCH GUIANAGF
FRENCH POLYNESIAPF
FRENCH SOUTHERN TERRITORIESTF
G
GABONGA
GAMBIAGM
GEORGIAGE
GERMANYDE
GHANAGH
GIBRALTARGI
GREECEGR
GREENLANDGL
GRENADAGD
GUADELOUPEGP
GUAMGU
GUATEMALAGT
GUERNSEYGG
GUINEAGN
GUINEA-BISSAUGW
GUYANAGY
H
HAITIHT
HEARD ISLAND AND MCDONALD ISLANDSHM
HOLY SEE (VATICAN CITY STATE)VA
HONDURASHN
HONG KONGHK
HUNGARYHU
I
ICELANDIS
INDIAIN
INDONESIAID
IRAN, ISLAMIC REPUBLIC OFIR
IRAQIQ
IRELANDIE
ISLE OF MANIM
ISRAELIL
ITALYIT
J
JAMAICAJM
JAPANJP
JERSEYJE
JORDANJO
K
KAZAKHSTANKZ
KENYAKE
KIRIBATIKI
KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OFKP
KOREA, REPUBLIC OFKR
KUWAITKW
KYRGYZSTANKG
L
LAO PEOPLE'S DEMOCRATIC REPUBLICLA
LATVIALV
LEBANONLB
LESOTHOLS
LIBERIALR
LIBYAN ARAB JAMAHIRIYALY
LIECHTENSTEINLI
LITHUANIALT
LUXEMBOURGLU
M
MACAOMO
MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OFMK
MADAGASCARMG
MALAWIMW
MALAYSIAMY
MALDIVESMV
MALIML
MALTAMT
MARSHALL ISLANDSMH
MARTINIQUEMQ
MAURITANIAMR
MAURITIUSMU
MAYOTTEYT
MEXICOMX
MICRONESIA, FEDERATED STATES OFFM
MOLDOVA, REPUBLIC OFMD
MONACOMC
MONGOLIAMN
MONTENEGROME
MONTSERRATMS
MOROCCOMA
MOZAMBIQUEMZ
MYANMARMM
N
NAMIBIANA
NAURUNR
NEPALNP
NETHERLANDSNL
NETHERLANDS ANTILLESAN
NEW CALEDONIANC
NEW ZEALANDNZ
NICARAGUANI
NIGERNE
NIGERIANG
NIUENU
NORFOLK ISLANDNF
NORTHERN MARIANA ISLANDSMP
NORWAYNO
O
OMANOM
P
PAKISTANPK
PALAUPW
PALESTINIAN TERRITORY, OCCUPIEDPS
PANAMAPA
PAPUA NEW GUINEAPG
PARAGUAYPY
PERUPE
PHILIPPINESPH
PITCAIRNPN
POLANDPL
PORTUGALPT
PUERTO RICOPR
Q
QATARQA
R
RÉUNIONRE
ROMANIARO
RUSSIAN FEDERATIONRU
RWANDARW
S
SAINT BARTHÉLEMYBL
SAINT HELENASH
SAINT KITTS AND NEVISKN
SAINT LUCIALC
SAINT MARTINMF
SAINT PIERRE AND MIQUELONPM
SAINT VINCENT AND THE GRENADINESVC
SAMOAWS
SAN MARINOSM
SAO TOME AND PRINCIPEST
SAUDI ARABIASA
SENEGALSN
SERBIARS
SEYCHELLESSC
SIERRA LEONESL
SINGAPORESG
SLOVAKIASK
SLOVENIASI
SOLOMON ISLANDSSB
SOMALIASO
SOUTH AFRICAZA
SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDSGS
SPAINES
SRI LANKALK
SUDANSD
SURINAMESR
SVALBARD AND JAN MAYENSJ
SWAZILANDSZ
SWEDENSE
SWITZERLANDCH
SYRIAN ARAB REPUBLICSY
T
TAIWAN, PROVINCE OF CHINATW
TAJIKISTANTJ
TANZANIA, UNITED REPUBLIC OFTZ
THAILANDTH
TIMOR-LESTETL
TOGOTG
TOKELAUTK
TONGATO
TRINIDAD AND TOBAGOTT
TUNISIATN
TURKEYTR
TURKMENISTANTM
TURKS AND CAICOS ISLANDSTC
TUVALUTV
U
UGANDAUG
UKRAINEUA
UNITED ARAB EMIRATESAE
UNITED KINGDOMGB
UNITED STATESUS
UNITED STATES MINOR OUTLYING ISLANDSUM
URUGUAYUY
UZBEKISTANUZ
V
VANUATUVU
VATICAN CITY STATEsee HOLY SEE
VENEZUELA, BOLIVARIAN REPUBLIC OFVE
VIET NAMVN
VIRGIN ISLANDS, BRITISHVG
VIRGIN ISLANDS, U.S.VI
W
WALLIS AND FUTUNAWF
WESTERN SAHARAEH
Y
YEMENYE
Z
ZAMBIAZM
ZIMBABWEZW

내 블로그 목록

팔로어