일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- crashlog
- Antialiasing
- phpmailer
- JavaScript
- MFC
- protobuf-c
- C#
- EUC-KR
- php
- docker
- net
- 와이브로
- 기념일관리
- C/C++
- self-signed ssl
- plcrashreporter
- ClickOnce
- GDI
- 블루투스 헤드셋
- M8200
- VS2008
- 설치제거
- Font
- API
- 크래시로그
- PDA
- 한 번만 실행
- .net
- 자바스크립트
- 데이터 전달
- Today
- Total
목록iPhone & Cocoa (51)
~☆~ 우하하!!~ 개발블로그
iPhone SDK 의 버전이 2.x 에서 3.0 으로 버전업되면서 API 에도 변화가 있었다. 3.0 버전의 SDK 에 새로 추가된 API는 오직 iPhone OS 3.0 이 설치된 기기에서만 정상적으로 동작한다. 상황에 따라서 iPhone OS 의 버전을 확인하여 API 를 호출하지 말아야 하는 경우도 생긴다. 이럴 때 iPhone OS 의 버전값을 구하는 방법은 다음과 같다. NSString* osVersion = [[UIDevice currentDevice] systemVersion]; NSArray* arrayComponents = [osVersion pathComponents]; if (2 == [[arrayComponents objectAtIndex:0] intValue]) { // iPho..
UIScrollView 로부터 파생되는 클래스를 만든다. 이번 예제에서는 MyScrollView 라는 이름을 사용한다. @interface MyScrollView : UIScrollView { } @end UIScrollView 클래스의 인스턴스는 UIScrollViewDelegate 프로토콜을 사용해야 한다. @interface MyScrollView : UIScrollView { } @end UIScrollView 클래스로부터 파생된 MyScrollView 클래스형 인스턴스는 스크롤, 줌 등의 동작을 수행하며, 실제로 스크롤되거나 확대/축소되는 컨텐츠는 MyScrollView 클래스의 멤버로 추가되는 뷰에 그려지게 된다. 이 예제에서는 큼지막한 이미지를 출력하는 이미지뷰를 사용하도록 하겠다. 우선 M..
뷰를 나타내기 위해서는 일단 뷰컨트롤러가 있어야 한다. 뷰컨트롤러의 loadView 메소드에서 뷰를 생성하여 뷰컨트롤러의 뷰로 설정하는 과정의 다음 코드를 보자. - (void)loadView { UITableView* tableViewItem = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain]; tableViewItem.delegate = self; tableViewItem.dataSource = self; self.view = tableViewItem; [tableViewItem release]; } UITableView 클래스형 오브젝트인 tableViewItem 를 생성할 때 그 크기를 CGRectZero 로 설..
Xcode 에서 Navigation-based Application 항목을 선택하여 프로젝트를 구성한 후 실행시키면 다음 그림과 같이 메인 뷰로 테이블뷰가 나타나게 된다. Navigation-based Application 의 소스를 살펴보면 네비게이션 뷰 컨트롤러의 루트 뷰 컨트롤러는 UITableViewController 에서 파생된 뷰컨트롤러임을 알 수 있다. @interface RootViewController : UITableViewController { } @end 이와 같이 간단하게 UITableViewController 를 사용하면 테이블뷰를 쉽게 나타나게 할 수 있다. 그렇다면 UITableViewController 가 아닌 UIViewController 에 테이블뷰를 얹기 위해서는 어떤..
네비게이션 뷰컨트롤러를 사용하는 응용 프로그램을 만들기 위한 코드이다. 무엇이 잘못되었는지 확인해보자. - (void)applicationDidFinishLaunching:(UIApplication *)application { MainViewController* mainViewController = [[MainViewController alloc] init]; UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:mainViewController]; [mainViewController release]; [window addSubview:navController.view]; [navC..
iPhone SDK 3.0 을 설치하게 되면 새로 만드는 프로젝트의 Base SDK 버전이 무조건 3.0 으로만 설정된다. SDK가 3.0 버전으로 업데이트되면서 기존의 2.2.1 SDK 의 API 와 호환되지 않거나 변경된 API가 있기 때문에 iPhone OS 2.x 기기에서 실행되는 프로그램을 개발하기 위해서는 Base SDK 버전을 2.2.1 로 수정해야만 한다. [Project] - [Edit Project Settings] 메뉴를 선택한다. 아래에서 두 번째 항목인 Base SDK for All Configurations 의 항목값을 iPhone Device 2.2.1 로 변경해주면 된다.
네비게이션 뷰컨트롤러 기반 프로그램 프로그램에서 네비게이션 뷰컨트롤러는 다른 뷰컨트롤러간의 이동을 책임지는 역할을 한다. 즉, 네비게이션 뷰컨트롤러 자체만으로 프로그램을 디자인하지는 않는 편이다. 다시말해서 또 다른 뷰컨트롤러가 있어야 한다. 네비게이션 뷰컨트롤러의 가장 첫 화면을 나타내기 위한 뷰컨트롤러를 MainViewController 라고 이름지었다면 다음과 같은 방법으로 네비게이션 뷰컨트롤러 기반 프로그램을 만들 수 있다. - (void)applicationDidFinishLaunching:(UIApplication *)application { // Override point for customization after application launch UINavigationController* ..