본문 바로가기

Objective-C

Objective-C 강의 블로그 http://blog.naver.com/PostList.nhn?blogId=sonofgrace&from=postList&categoryNo=11 더보기
[Objective-C] IOS Cookbook 예제 chapter5-1 1. main 메서드로부터의 실행순서는 TestBedAppDelegate.didFinishLaunchingWithOptions -> TestBedViewController.loadViewview를 띄우기전에 delegator에서 먼저 작업을 진행하고 loadView로 넘기는듯.. 2. TestBedViewController.loadView 메서드에서 self.navigationController.navigationBar.tintColor = COOKBOOK_PURPLE_COLOR; self.navigationItem.rightBarButtonItem = BARBUTTON(@"Right", @selector (rightAction:)); self.navigationItem.leftBarButtonItem .. 더보기
[IOS] UIScreen UIScreen은 IOS의 실제 스크린을 나타내며, bounds 메시지를 사용하면IOS 스크린의 전체사이즈를 가지고있는 CGRect가 return (320 * 480) applicationFrame 메시지를 사용하면 중앙 application영역 - (status bar와 navigation bar를 사용하는)의 CGRect가 리턴.. (320 * 416) 20은 status bar, 44는 navigation bar 더보기
[Objective-C] message forwarding IOS5 Developer's Cookbook에 나온 예제.. 이 외에도 여러방법이 있다. 책에는 signature = [[self carInfo] methodSignatureForSelector:@selector(UTF8String)]; 이 부분이signature = [carInfo methodSignatureForSelector:@selector(UTF8String)]; 이렇게 되어있다. 이게 계속 null을 리턴해서, runtime error가 발생하는데 이유를 몰라서보니..carInfo가 readonly이고, 값이 할당되지 않은 상태라서 null을 리턴하는 것 같아 [self carInfo]로 정상적으로 값이 할당된 NSString을 받아오도록 수정해보았다. 그랬더니 잘 되네... 가장 간단한 f.. 더보기
[objective-c] compare. NSDictionary의 정렬 메소드 중 keysSortedByValueUsingSelector:(SEL)selector 가 있다. NSDictionary의 value로 키값을 정렬하는 메소드이다. 역시나.. 자바에만 익숙해져있는 나는.. 이 상황이 이해가 안된다. ㅋㅋ 아니 뭐 NSDictionary가 정렬 메서드를 가지고 있으면 되는거지 저기다가 Selector를 던지는건 당최 뭐람... 이런것인데... 바로 keysSortedByValueUsingSelector:@selector(compare:).. 이 부분이 처음 이해가 안 되었던 부분.. Java랑 비교하면.. Map으로 들어가는 객체가 Comparable 인터페이스를 구현한 것과.. 비슷하다고 보면 될듯하다. 실제로 위 메서드가 호출되면 NS.. 더보기
[NavigationController 하고 AppDelegate...] 책 보면서 따라가는 것도 힘드네.. 와~ delegate 모델... 와~ delegate 모델 소리가 절로 나오는구나.. 앞의 "와"는 감탄이고.. 뒤의 "와"는 반쯤 짜증.... 기본적으로 자바처럼 인터페이스에 기반한 뭐 그런게 아니라 메서드 시그너쳐에 기반해서 움직이는 것 같기는한데.. 잘 이해가 안된다.. 책에서 나온 예제를 따라하던 중... IOS용 App을 만들려고하면 기본적으로 PrefixAppDelegate.h와 PrefixAppDelegate.m이 생기는데.. 이 클래스가 앱 자체에 대한 delegator 역할을 하는건 좀 이해가 간다.. 이 AppDelegate.h에서 UINavigationCotroller를 프로퍼티로 선언하고.. 아래와 같이 app구동시 위임메서드를 통해 rootVie.. 더보기
[Objective-C] NSInvocation 간단한 예제.. NSMethodSignature의 객체를 생성 할 때 셀렉터를 지정하는데 NSInvocation의 객체를 생성 할 때도 셀렉터를 set해줘야 함... signature는 특정 셀렉터와 연결되는 것이 아니라 구성의 정보만 가지고 있는 상태라 그렇다고 함.... 더보기
[Objective-C] retainCount Objective-C 2.0 책으로 공부를 하고 있다. Xcode는 최신 버전인 것 같고.. 책에서는 NSAutoReleasePool을 사용하고 있는데 Xcode가 기본적으로 Automatic Reference Counting를 쓰도록 되어 있어서 책과 실제 작성 가능한 코드의 GAP에서 또 한참 헤맸다 --; ARC가 활성화 되어있으면 [pool drain]이나 retaionCount와 같은 메서드를 아예 사용하지 못 한다. 좀 찾아보니 아직 써드파티 라이브러리등은 ARC를 지원하지 않는다고 하고.. 뭐 잘쓰면 약 못 쓰면 독이라는 이야기도 많다. 처음 Objective-C를 배우는 입장에서 이 ARC가 굉장히 편하게 다가오기는 하는데 근본적으로 GC와는 다른 메커니즘으로 돌아가는 이 ARC를 내용도 .. 더보기
[Objective-C] X-Code의 ARC http://seorenn.blogspot.kr/2012/06/xcode-arc.html 더보기