'Dev/iOS'에 해당되는 글 44건

  1. 2011.09.23 iOS Coverflow Control
  2. 2011.09.22 SQLite3를 이용해 실제 Device에서 실행시 오류.
  3. 2011.09.22 iOS에서 SQLite3에 이미지 저장하는 방법 : 링크
  4. 2011.07.11 iOS 개발자 등록

iOS Coverflow Control

Dev/iOS 2011. 9. 23. 14:55


프로젝트에 iTunes에서 음악을 재생하면 나타나는 앨범 재킷들처럼 Coverflow 를 삽입하는 내용을 정리한다.
원문 : iPhone Coverflow Tutorial : Adding Tapku To Xcode4 Project 



 Devin Ross란 사람이 만든 Tapku 라는 라이브러리를 사용한다. (Free library)
download
 
1. View-based application iphone 프로젝트를 생성한다.
2. Tapku library 를 프로젝트로 복사한다. 
3. 복사후 해당 폴더 안으 TapkuLibrary.xcodeproj 파일을 프로젝트의 framework group에 드래그 앤 드롭한다.
4. 'TapkuLibrary' 폴더 아래의 'TabkuLibrary.bundle' 파일을 프로젝트의 Supporting Files group에 드래그 앤 드롭한다. 대화 상자가 나타나면 "Create Folder References"를 선택 하고 "Copy items"는 체크를 해제 한후 'Finish'를 클릭한다.
5. Core Animation & MapKit frameworks를 프로젝트에 추가한다.
 - Project navigator에서 project file을 선택
 - targets list 에서 해당 target을 선택
 - Build Phases tab을 선택 후 Link Binary With Libraries 를 확장한다.
 - '+'버튼을 클릭해서 'QuartzCore.framework'와 'MapKit.framework'을 추가한다.
6. Target Dependencies에 Tapku library 추가
 - 'Target Dependencies'를 확장
 - Tapku Xcode project에서 TapkuLibrary를 추가
7. libTapkuLibrary.a추가
 - Target Build Phases 의 'Link Binary With Libraries'섹션에서 '+'버튼을 클릭해 'libTapkuLibrary.a'를 추가한다.
8. Build Settings의 'Header Search Paths'에 '$(SRCROOT)/Coverflow/Tapku/src'를 추가해 준후 Done. (자신의 프로젝트에 알맞도록 변경 할것)
9. Linker 섹션 아래 'Other Linker Flags'에 '-ObjC'와 'all_load' flag추가 후 Done.
10. Tapku 폴더의 src/Frameworks/ 위치에 있는 TouchJSON library를 추가한다.
 - TouchJSON폴더를 frameworks group에 드래그 앤 드롭 한다.
 - 대화상자가 나타나면 copy item checkbox 를 선택한다.

설정 완료.

뷰 컨트롤러의 헤더. ----

#import <UIKit/UIKit.h>
#import <TapkuLibrary/TabkuLibrary.h>

@interface XXXViewController : UIViewController <TKCoverflowViewDelegate, TKCoverflowViewDataSource>
{
    TKCoverflowView * coverflow;
    NSMutableArray * covers;
}
@property (retain, nonatomic) TKCoverflowView * coverflow;

@end

뷰 컨트롤러의 구현 파일. -----
- (void)viewDidLoad
{
    [super viewDidLoad];

    covers = [[NSArray arrayWithObjects:
        [UIImage imageNamed:@"aaaa.png"], [UIImage imageNamed:@"bbbb.png"], nil] retain];

    coverflow = [[TKCoverflowView alloc]  initWithFrame:CGRectMake(0, 0, 480, 300)];
    coverflow.coverflowDelegate = self;
    coverflow.dataSource = self;
    [self.view addSubview:coverflow];
    [coverflow setNumberOfCovers:50];
}
 
** 추가로 datasource 와 view delegate 메소드들을 구현해줘야 한다. 데모는 landscape로 회전되어 있는다.
project download
 
이상. 프로그램 소스는 코드에서 복사한 내용이 아니라 오탈자가 있을수 있으니, 소스 코드를 다운로드 하여 확인.
:

SQLite3를 이용해 실제 Device에서 실행시 오류.

Dev/iOS 2011. 9. 22. 17:33


error 내용 )
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-gcc-4.2 failed with exit code 1

SQLite3 라이브러리를 사용하는 코드를 작성중. 시뮬레이터에서는 정상 작동하는 코드가 실제 디바이스 타겟으로 잡아 놓고 실행시 위와 같은 오류 메시지를 뱉어내며 빌드가 실패한다.

문제점 )
프로젝트의 Build Settings 의 Library Search Paths 가 기본으로 시뮬레이터의 경로로 설정되어 있는 경우에 발생 되는듯 하다.

해당 위치 : 프로젝트 루트 선택 -> TARGETS중 해당 타겟 선택



해결책 )
해당 위치를 iPhoneOS.platform에 해당하는 위치로 변경해 주면 빌드가 정상적으로 된다.


iPhoneOS platform 에 해당하는 위치를 입력후 iPhoneSimulator platform의 위치보다 위로 드래그앤 드롭하여 올려준다. 자세한 위치는 다음과 같이 변경 하였다 (version 4.3 일경우)

LIBRARY_SEARCH_PATHS = $(inherited) "$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/usr/lib" "$(DEVELOPER_DIR)/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/usr/lib"




해당 내용은 SQLite3라이브러리만 해당하는것이 아니라 다른 종류의 라이브러리들도 해당되리라 생각 된다.

:

iOS에서 SQLite3에 이미지 저장하는 방법 : 링크

Dev/iOS 2011. 9. 22. 13:18


미니 님의 페이지 링크.
 
:

iOS 개발자 등록

Dev/iOS 2011. 7. 11. 12:35


iOS 에서 개발을 위해 개발자 라이센스를 구입했다.
뭐, 요즘은 애플 개발자 홈페이지에도 자세하게 나와있고, 인터넷 검색만 이용해도 굉장히 많이 나오니 등록은 쉬웠다.
인증 메일이 스펨으로 들어가 iOS 전담 서비스 센터(080-860-9797)에 전화한통 한것 이외에는 아무 어려움 없이 끝났다.

그리고 메일도 전화도, 모두 한국어로 진행 되니 어려울 것 없다.
 
: