목차 일부
저자소개 ... 5
감사의 글 ... 6
옮긴이 소개 ... 7
옮긴이의 말 ... 8
들어가며 ... 20
1부 개요
1장 개발 도구 둘러보기
엑스코드 ... 26
인터페이스 빌더 ... 28
정리 ... 30
2장 간단한 아이폰 애플리케이션 만들기
템플릿을 이용한 프로젝트 생성 ... 32
...
더보기
목차 전체
저자소개 ... 5
감사의 글 ... 6
옮긴이 소개 ... 7
옮긴이의 말 ... 8
들어가며 ... 20
1부 개요
1장 개발 도구 둘러보기
엑스코드 ... 26
인터페이스 빌더 ... 28
정리 ... 30
2장 간단한 아이폰 애플리케이션 만들기
템플릿을 이용한 프로젝트 생성 ... 32
GUI 만들기 ... 34
간단한 UIVIEWCONTROLLER ... 37
아이폰에서 돌려보기 ... 41
정리 ... 42
3장 시뮬레이터
시뮬레이터 UI ... 46
멀티터치 시뮬레이션 ... 46
코어 로케이션 시뮬레이션 ... 47
시뮬레이터 회전 ... 49
시뮬레이터 파일시스템 ... 49
시뮬레이터와 실제 하드웨어의 차이 ... 51
실제 하드웨어에서 동작하지 않는 API 사용 회피 ... 51
시뮬레이터와 하드웨어의 성능 차이 ... 52
정리 ... 54
2부 GUI
4장 아이폰 UI 기초
아이폰 홈 화면 ... 60
시네마틱 UX ... 62
아이폰 내장 애플리케이션 ... 63
사용자와 UI 사이에 발생하는 상호 작용 ... 65
정리 ... 66
5장 UIViewController
기본적인 모델, 뷰, 컨트롤러 디자인 패턴 ... 68
UIVIEWCONTROLLER ... 70
UIVIEWCONTROLLER의 메소드 오버라이딩 ... 70
뷰 회전 관리 ... 72
메모리 경고 처리 ... 74
UIVIEWCONTROLLER 사용 ... 74
코드 생성 ... 75
UIViewController 헤더파일 작성 ... 77
UIViewController 구현 ... 78
인터페이스 빌더에 컨트롤러 추가 ... 82
UIApplicationDelegate 개요 ... 84
애플리케이션 델리게이트에서 모델 생성 ... 85
윈도우에 뷰 추가 ... 87
정리 ... 89
6장 UITableView
UITABLEVIEWDATASOURCE와 UITABLEVIEWDELEGATE ... 92
UITableView와 NSIndexPath ... 93
UITableViewDataSource ... 93
UITableViewDelegate ... 98
애플리케이션에 UITABLEVIEW 추가 ... 100
UITableViewDataSource 작성 ... 101
애플리케이션 동작 확인 ... 108
행을 터치해 특정 동작을 수행하게 만들기 ... 109
UITABLEVIEW를 그룹 단위로 구성 ... 114
모델에 주 정보 추가 ... 114
UITableViewDataSource 수정 ... 116
UITABLEVIEW의 고급 설정 기능 ... 119
테이블 가장자리에 알파벳 순으로 나열된 인덱스 추가 ... 120
검색창 추가 ... 121
정리 ... 122
7장 UITableViewCell
UITABLEVIEWCELL ... 124
UITABLEVIEWCELL에 이미지 추가 ... 126
UITABLEVIEWCELL에 대한 고급 커스터마이즈 ... 130
커스텀 셀 제작 시 고려할 성능 문제 ... 134
UITABLEVIEWCELL 재사용 ... 136
재사용 식별자 ... 138
정리 ... 140
8장 UINavigationController 내비게이션 모델
UINAVIGATIONCONTROLLER 모델 ... 141
UINAVIGATIONCONTROLLER 제작 ... 143
UINAVIGATIONCONTROLLER 설정 ... 145
UIVIEWCONTROLLER 추가와 제거 ... 147
UITOOLBAR 추가 ... 148
행 편집 기능 ... 149
UINavigationController로 MyView 이동 ... 149
EditViewController 제작 ... 150
행 편집 ... 154
행 추가 ... 158
행 삭제 ... 159
정리 ... 159
9장 UIApplicationDelegate
UIAPPLICATIONDELEGATA 존재 이유 ... 161
애플리케이션 시작과 종료 ... 162
애플리케이션 구동 시 호출되는 메소드 ... 163
applicationWillTerminate 메소드 ... 164
애플리케이션 동작 중 메시지 수신 ... 165
자원 경고 처리 ... 167
전화 수신과 슬립 상태 처리 ... 168
상태 변화 ... 168
원격 알림 메시지 관리 ... 169
정리 ... 170
10장 커스텀 UIView
코코아 터치 뷰 지오메트리 ... 172
프로젝트에 커스텀 뷰 추가 ... 173
커스텀 뷰 코드 작성 ... 173
코어 그래픽스 ... 174
drawRect 작성 ... 181
정리 ... 184
11장 터치 이벤트 처리
커스텀 UIView에서 멀티터치 처리 ... 186
touchesBegan:withEvent: 구현 ... 186
터치정보 NSSet ... 188
touchesMoved:withEvent: 구현 ... 188
touchesEnded:withEvent: 구현 ... 189
멀티터치 이벤트 처리 ... 189
터치 이벤트를 처리하도록 커스텀 뷰 예제 업데이트 ... 189
터치를 이용한 원 이동 ... 190
원 크기 조절 기능 추가 ... 194
정리 ... 197
12장 코코아 터치에서 제공하는 컨트롤
코코아 터치에서 제공하는 여러 가지 컨트롤 ... 200
UISLIDER ... 201
인터페이스 빌더에서 UISlider 설정 ... 201
UISlider 상태 업데이트 ... 203
UITabBar ... 204
인터페이스 빌더에서 UITabBar 설정 ... 205
UITabBar에 UITabBarItem 추가 ... 205
UITabBar 고급 기능 설정 ... 207
UIPickerView ... 208
인터페이스 빌더에서 UIPickerView 설정 ... 208
UIPickerViewDataSource 생성 ... 208
UIPickerView 델리게이트 생성 ... 210
정리 ... 211
13장 텍스트 입력 처리
인터페이스 빌더를 이용한 키보드 설정 ... 214
대소문자 설정 ... 215
자동 완성 기능 활성화와 해제 ... 216
키보드 종류 설정 ... 217
리턴 키 동작 설정 ... 218
기타 설정 ... 218
코드를 이용한 키보드 설정 ... 219
키보드 표시 ... 219
UITextInputTraits ... 220
키보드 이벤트 처리 ... 221
UITextFieldDelegate 생성 ... 221
키보드 표시를 위한 뷰 이동 ... 223
정리 ... 225
14장 코어 애니메이션으로 시네마틱 UI 만들기
UIVIEW 애니메이션 메소드 ... 228
CALAYER를 이용한 코어 애니메이션 고급 기능 ... 235
UIIMAGEVIEW를 이용한 애니메이션 ... 239
정리 ... 240
15장 OpenGL ES 사용
아이폰의 OPENGL ES 기능 ... 242
기본적인 OPENGL 뷰 생성 ... 243
정리 ... 247
16장 사파리 이용
아이폰 웹 브라우저로 URL 열기 ... 250
UIWEBVIEW ... 251
애플리케이션에 UIWebView 추가 ... 252
URL 열기 ... 252
UIWebViewDelegate 구현 ... 253
애플리케이션 번들에 있는 HTML 로딩 ... 254
정리 ... 255
3부 데이터 다루기
17장 사용자 데이터 저장
NSUSERDEFAULTS 객체 접근 ... 260
NSUSERDEFAULTS에서 데이터 읽고 쓰기 ... 261
기본 사용자 데이터 설정 ... 263
설정 애플리케이션 ... 266
설정 번들 추가 ... 267
설정 내용 추가 ... 267
정리 ... 270
18장 코어 데이터를 이용한 데이터베이스
코어 데이터 기본 구성 ... 272
좋아하는 도시 예제에 코어 데이터 지원 기능 추가 ... 274
애플리케이션 델리게이트 변경 ... 275
매지티드 오브젝트 모델 활용 ... 280
CRUD ... 284
생성 ... 284
읽기 ... 285
업데이트 ... 287
삭제 ... 287
좋아하는 도시s 예제 업데이트 ... 287
코어 데이터 활용 분야 ... 297
코어 데이터 활용에 부적합한 분야 ... 297
정리 ... 298
19장 네트워크로 외부와 통신
웹 접근 ... 300
파운데이션 클래스에서 URL 사용 ... 300
NSURLRequest와 NSURLConnection 사용 ... 302
메시지 UI 프레임워크를 이용해 애플리케이션에서 이메일 발송 ... 307
코어 파운데이션 소켓 ... 311
CFSocket ... 313
CFHost를 이용한 호스트 정보 획득 ... 317
CFStream ... 319
봉주르 탐색 ... 323
봉주르 서비스 탐색 ... 323
NSNetService ... 326
정리 ... 328
20장 푸시 알림 서비스
푸시 알림 서비스 구조 ... 331
푸시 알림 커뮤니케이션 ... 331
푸시 알림의 보안 ... 337
푸시 알림 메시지용 인증서 ... 339
서버단의 푸시 알림 서비스 개발 ... 342
루비로 작성한 푸시 알림 제공자 ... 342
푸시 알림 메시지 전송 ... 346
피드백을 이용한 전송 확인 ... 346
아이폰 클라이언트에서 푸시 알림 사용 ... 346
알림 메시지 수신 등록 ... 347
애플리케이션에서 알림 메시지 수신 ... 348
정리 ... 349
21장 게임킷 API
P2P 연결 ... 352
장치 검색 ... 352
세션 작업 ... 356
게임 내 음성 기능 ... 361
정리 ... 365
22장 잘라내기, 복사, 붙여넣기
표준 컨트롤에서 복사와 붙여넣기 기능 ... 368
페이스트보드의 종류 ... 368
UIPAETEBOARD 사용 ... 369
커스텀 뷰에서 잘라내기, 복사하기, 붙여넣기 ... 371
메뉴 표시를 위한 touchesEnded:withEvent: 구현 ... 371
copy: 메소드 구현 ... 372
paste: 메소드 구현 ... 373
동작 방식 ... 374
정리 ... 374
23장 지도 API
MKMAPVIEW를 이용한 내장 지도 표시 ... 375
MKMapView 생성 ... 376
지도 영역 지정 ... 377
지도 상에 설명 추가 ... 380
설명과 지도 성능과의 관계 ... 382
좌표 변환 ... 382
정리 ... 385
4부 미디어
24장 아이폰에서 지원하는 미디어 타입
아이폰에서 지원하는 오디오 포맷 ... 389
압축 방식 오디오 포맷 ... 390
비압축 방식 오디오 포맷 ... 390
아이폰에서 지원하는 비디오 포맷 ... 391
정리 ... 391
25장 오디오 재생
AV 파운데이션 프레임워크 ... 394
AVAudioSession ... 394
AVAudioSessionDelegate ... 397
AVAudioPlayer로 오디오 재생 ... 398
AVAudioPlayerDelegate ... 401
OPENAL로 오디오 재생 ... 401
정리 ... 402
26장 아이팟 라이브러리 접근
미디어 플레이어 프레임워크 작업 ... 404
미디어 라이브러리 접근 ... 404
MPMediaPickerController를 이용하는 방법 ... 405
미디어 검색 ... 408
플레이어 컨트롤러 ... 413
미디어 표지 ... 415
정리 ... 416
27장 오디오 녹음
AVAUDIONSESSION 설정 ... 417
AVAudIORECORDER 생성 ... 419
음성 녹음기 생성 ... 421
정리 ... 426
28장 애플리케이션에서 비디오 재생
애플리케이션 번들에 포함된 비디오 파일 재생 ... 428
인터넷을 통한 비디오 재생 ... 430
정리 ... 431
5부 아이폰 하드웨어 다루기
29장 디바이스 정보 가져오기
배터리 상태 확인 ... 436
접근 센서 ... 436
디바이스 메타데이터 ... 437
정리 ... 438
30장 코어 로케이션
현재 위치 알아내기 ... 442
CLLocationManager 할당 ... 443
델리게이트 설정 ... 444
CLLocationManagerDelegate 프로토콜 구현 ... 445
위치 업데이트 시작과 중단 ... 446
구글 맵에 위치 표시 ... 446
좌표 오차 줄이기 ... 448
위치 정보 필터링 ... 449
완성된 예제 코드 ... 450
아이폰 3GS의 나침반 기능 ... 453
정리 ... 454
31장 가속도계
현재 방향 알아내기 ... 456
기포 수준기 만들기 ... 458
UIAcceleration 오브젝트 ... 462
쉐이크 이벤트 ... 462
쉐이크 이벤트 검출 ... 463
drawRect ... 463
motionBegan과 motionEnded 작성 ... 465
모션 이벤트 취소 ... 465
정리 ... 466
32장 아이폰 주변 장치
아이폰에 연결할 주변장치 생성 ... 467
EAACCESSORYMANAGER로 현재 연결된 주변장치 찾기 ... 468
EAACCESSOR 클래스 ... 469
EASESSION ... 470
NSSTREAM으로 디바이스와 통신 ... 471
정리 ... 472
6부 애플리케이션 배포
33장 코드 서명
개발 인증서 받기 ... 476
프로비저닝 프로세스 ... 476
개발, 배포, 애드혹 프로비저닝 ... 477
프로비저닝 프로파일 설치 ... 478
서명한 애플리케이션의 동작 ... 480
서명할 애플리케이션 설정 ... 480
애드혹 빌드 ... 482
엑스코드에서 빌드 설정 ... 482
사용자에게 배포 ... 484
정리 ... 484
34장 애플리케이션 확장
판매할 수 있는 상품의 종류 ... 486
잠금 해제 컨텐츠 ... 487
아이튠즈 커넥트에 구매 가능한 컨텐츠 준비 ... 489
스토어 킷 작업 ... 490
컨텐츠 구매 기능 활성화 검사 ... 490
스토어 표시 ... 491
상품 구매 ... 493
과금 처리 ... 493
트랜잭션 유효성 검사 ... 496
컨텐츠 잠금 해제 ... 496
구매한 컨텐츠 복구 ... 497
애플리케이션 내 구매 테스트 ... 498
정리 ... 499
찾아보기 ... 501
더보기 닫기