IPhone & IPad/작은 팁2011/06/02 16:53
개발하다보면 Common Module 혹은 Common Library 등.. 이런 뉘앙스의 이름으로 불리는 녀석들이 있다.
개발하는데 공통적으로 쓰이는 것들을 모아놓은 녀석들을 지칭하는 말인데,
cocoa에서는 이렇게 안부르고 static library라고 부른다.

iPhone, iPad의 경우 시뮬레이터가 있다보니 시뮬레이터(simulator)용, 디바이스(device)용 이렇개 2가지를 만들어서 상황에 맞게 사용을 해야 하는데, 이게 참 번거로운 일이다.

생각해보라.
시뮬레이터로 테스트 할땐 시뮬레이터용 라이브러리를 넣고
디바이스에서 테스트 할땐 시뮬레이터용 라이브러리를 삭제하고, 디바이스용 라이브러리를 넣고
다시 시뮬레이터로 테스트 할땐 디바이스용 라이브러리를 지우고, 시뮬레이터용 라이브러리 넣고.
지금 TAd(SK T에서 제공하는 광고)가 이렇게 구현되어 있다.

하지만, 다행스럽게도 라이브러리를 하나로 합칠 수 있다.
lipo를 이용하면 되는데, 잠시 후에 언급하겠다.

1. 라이브러리로 만들 프로젝트 생성


라이브러리로 만들 프로젝트를 새로 만든다. 이때 타입은 Cocoa Touch Static Library이다. 
iOS > Framework & Library > Cocoa Touch Static Library


Library라는 이름으로 프로젝트를 생성했고, 공통으로 쓰이는 모듈을 모아놓은 파일을 프로젝트에 추가를 한다.
Common.h, Common.m 파일을 추가했다.


2. 시뮬레이터용(simulator) Target 만들기.


새로운 Target을 추가를 하는데, Target의 타입 또한 Cocoa Touch Static Library이다.


시뮬레이터용 라이브러리이므로, Target이름은 Library-Simulator로 하겠다. (네이밍은 본인 마음대로)


그리고 파일을 Build Phases에 추가를 해야 한다.
헤더(.h) 파일은 Copy Headers에, 소스(.m)파일은 Compile Sources에 드래그&드랍(Drag&Drop)으로 추가를 한다.
Header는 Public, Private, Project 이렇게 3가지 타입을 가지고 있다. 목적에 맞는곳에 넣으면 되며, 기본값은 Project이다.


그리고 마지막으로 Scheme 타입에 Build Configuration을 Release로 변경한다.
Product > Edit Scheme


3. 디바이스용(device) Target 만들기.


2. 시뮬레이터용(simulator) Target 만들기.와 똑같은 작업의 반복이다. 이름만 다른것으로 바꿔주면 된다.
Library-Device라고 하겠다.


4. Targets 합치기.


위에서 언급했던대로, 지금 만든 2개의 Target을 하나로 합치는 Target을 만든다.
이번에도 Add Target을 하는데, Aggregate로 만든다.
Other > Aggregate


이름은 Library-iOS4.0 으로 하겠다.
이번에도 마찬가지로 Edit Scheme에서 Build Configuration을 Release로 변경한다.


Run Script를 추가를 한다.
Add Build Phases > Add Run Script


그리고 나서 lipo를 이용한 두 Target을 Merge하는 구문을 넣는다.

rm -rf ${BUILT_PRODUCTS_DIR}/libLibrary-ios4.0.a 

lipo -create "${BUILT_PRODUCTS_DIR}/../${BUILD_STYLE}-iphonesimulator/libLibrary-Simulator.a" \
"${BUILT_PRODUCTS_DIR}/libLibrary-Device.a" -output \
"${BUILT_PRODUCTS_DIR}/libLibrary-ios4.0.a"

보시다시피 sh 명령어이다. 파일명은 본인의 상황에 맞게 수정하면 된다.
위 명령어를 보면 대충 파악 되겠지만, 두개의 .a를 하나의 .a로 Merge해주는 명령어다.
지금은 빌드를 안했기 때문에 libLibrary-simulator.a와 libLibrary-device.a가 없다. 
여기서 주의할점은, 빌드를 하면 lib이 접두어로 붙게 된다. 그러므로 .a 파일명에 접두어로 lib을 붙이는걸 잊지말자. 


5. 빌드하기


자, 이제 세팅은 완료가 되었다. 각각의 Target을 Build해주면 된다.


먼저, Library-simulator 빌드!


이젠 Library-Device 빌드!


Library-simulator.a, Library-device.a 파일 모두 생성되었다.



마지막으로 Library-iOS4.0 빌드!


이제 만들어진 libLibrary-iOS4.0.a를 사용하면 되는데, 이 녀석의 위치는
libLibray-Device.a를 우클릭해서 Show in Finder로 보면 Finder가 열리는데, 그 위치에 있다.


이제 libLibrary-ios4.0.a와 Common.h 파일을 작업중인 프로젝트에 넣어서 사용하면 끝!

만약. libLibrary-ios.4.0 빌드를 실패했다면 십중팔구 파일을 lipo에서 파일을 못찾아서 나는 에러이다.
아래 4가지 항목을 체크해보면 해결 될 것이다.
  • 만들어놓은 Target들의 Build Configuration이 Release로 되어 있는지
  • Library-simulator는 Simulator로 빌드했는지
  • Library-device는 device로 빌드했는지
  • Library-ios는 device로 빌드했는지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Johan Kim hiphapis

TRACKBACK http://hiphapis.net/trackback/193 관련글 쓰기

댓글을 달아 주세요

  1. 반딧불 축제는 두시간 반 걸려서 가서 그것만 보기에는 좀 작고 덥고 볼것도 많지는 않은 듯 했지만 - 더워서 자세히 보지도 못했지만. - 점심먹은 적상면에 순두부마을 음식들이 너무 맛있어서 계곡 구경도 하고 찜질방도 가고 - 나는 안즐기는지라 안가지만 - 곤돌라 타고 경치구경도 한번 해도

    2011/06/16 20:05 [ ADDR : EDIT/ DEL : REPLY ]

먼저 iOS에서 지원하는 접근성은 어떤것이 있는지 알아보자.
iOS에서 지원하는 접근성 항목은 총 7가지가 있다.


이 항목들은 Settings(설정) -> General(일반) -> Accessibility(손쉬운 사용) 에서 확인할 수 있으며, iOS를 사용하는 Device(장치)인 iPod touch, iPhone, iPad 모두 동일하게 지원을 한다.
 

iPad의 접근성(손쉬운 사용) 설정 화면

 

VoiceOver

VoiceOver 설정 화면
이름이 직관적이라 아마 모두 감 잡았으시리라 생각되지만 Apple에서 만든 Screen Reader 라고 보면 된다.
OS X에 있는 VoiceOver와 동일한 기능을 수행한다.
VoiceOver를 On을 하면, Touch는 선택된 Object(객체)에 대한 설명을 읽어주는것으로 대체되며, 
Double-tap을 해야지만 Click과 같은 역활을 수행하게 된다.

기본적인 작동법의 변화 전/후를 정리해보았다.
   VoiceOver Off (Default)  VoiceOver On
 터치(Touch) 실행 항목 읽기
 탭(Double tab) 줌인/줌아웃 실행
 한 손가락 좌우 쓸어넘기기
(Flick left, right)
좌/우로 스크롤링 및 이동 이전/다음 항목 읽기
 두 손가락 아래로 쓸어 넘기기
(Two finger flick down)
선택한 항목에서부터 시작하여 페이지 읽기
두 손가락 위로 쓸어 넘기기
(Two finger flick up)
가장 위에서부터 시작하여 페이지 읽기 
세 손가락 좌/우/위/아래로 쓸어 넘기기
(Three finger flick left/right/up/down)
스크롤링
네 손가락 좌/우로 쓸어 넘기기
(Four finger flick left/right)
이전/다음 컨테이너(메뉴 혹은 페이지)로 이동 - iPad만 지원
네 손가락 위/아래로 쓸어 넘기기
(Four finger flick up/down)
처음/마지막 요소로 이동 - iPad만 지원
이 정도만 알아두면 VoiceOver를 사용하는데 지장은 없을듯 하다.

http://www.apple.com/accessibility/iphone/vision.html
http://www.apple.com/accessibility/ipad/vision.html
이곳에 가면 간략한 설명은 나오지만, 디테일한 사용설명서 같은것은 없다.
간단하게 표로 결과물이 나오기까지 저자의 노고를 조금이라도 알아달라는 마음에서;;

하지만 막상 해보면 생각보다 쉽게 되지 않은데 "VoiceOver 연습"이라는 메뉴가 있다.
이곳에 가서 연습을 해보면 된다.

VoiceOver 설정 화면VoiceOver 연습 화면

Zoom(확대/축소)

확대/축소 설정 화면
간단하게 화면을 확대/축소하는 기능이다.
이것또한 Touch방식이 변경되는데,  보통 사진이나 Safari에서는 Double tab을 하면 확대/축소가 되었다. 하지만 Zoom기능을 켜게되면 세 손가락이 기준이 된다.
  • 세 손가락으로 Double tab을 하면 확대/축소가 되고
  • 세 손가락으로 Drag(이동)을 하면 화면이 움직이고
  • 세 손가락으로 Double tab한 상태에서 Drag up, down을 하면 줌인/줌아웃이 된다.








Large Text(큰 텍스트)

모든 글자를 크게 해주는것이 아니라 달력, 연락처, 메일, 메세지, 노트의 글자 크기만 키워주는 것이다.
큰 텍스트 끄도록 설정한 화면큰 텍스트가 꺼져 있는 상태에서 메일 보기 화면

텍스트를 56pt로 설정한 화면56pt로 설정된 메일 보기 화면


White on Black(검정색 바탕에 흰색) 

화면의 배경색을 검정색으로 바꾸고, 글자는 흰색으로 바꾸는 설정이다. 
참고로. 이 옵션을 킨 상태에서 캡쳐를 떠도 그냥 일반의 모습으로 캡쳐가 된다. (그래서 포토샵으로 Invert했다는 수고를 알아달라는건 아니다.흠흠)
검은색 바탕에 흰색 옵션을 끈 화면검은색 바탕에 흰색 옵션을 켜서 색이 반전된 화면


Mono Audio(모노 오디오)

접근성 설정 화면에서 모노 오디오를 킨 모습
모노 오디오는 스트레오로 나오는것을 모노로 바꿔서 출력을 해주는 기능














Speak Auto-text(자동 텍스트 말하기)

제목막 보고서,  voiceOver도 있는데.. 이게 무슨 기능인가? 했다.
글자를 입력하다 보면, 자동으로 완성된 문자를 추천해줄때가 있다. 바로 추천된 단어를 읽어주는 기능이다.
접근성 설정 화면에서 자동 텍스트 말하기를 킨 모습자동 완성 텍스트 예제 화면

Tripe-click Home(홈 삼중 클릭)

Home버튼 (iPod, iPhone, iPad에 외부로 노출된 유일한 제어기능이 있는 버튼)을 세번 눌렀을때 실행되는 기능을 정의하는 메뉴다.
옵션들의 대한 설명은 뻔한것이므로 생략하겠다.

홈 삼중 클릭 설정 화면


마치며

iOS에서 제공하는 접근성 기능이 무엇인지 간략하게 알아봤다.
다들 이미 눈치를 챘겠지만, 우리가 신경써서 확인해야 될 부분은 VoiceOver다.
VoiceOver가 제대로 읽어주는지, VoiceOver의 Object간 이동 순서가 논리적인지등
나머지 것들은 시스템에서 제어를 하는 접근성 항목이기 때문이다.



ps.
Xcode3 에서 Xcode4로 넘어오면서 Accessibility 항목이 IB에서 사라져버렸다.
분명 IB에서만 사라진게 아니라 Code에서도 변화가 있을것 같은데..
문제는 아직까지 Xcode4에 맞춘 Guide Document가 아직 릴리즈가 안되었다는 것이다.
일단 Apple에 Xcode4용으로 빨리 릴리즈 해달라고 메일을 보내놓긴 했는데.. 언제 릴리즈가 될지 모르겠다.
결국 헤딩하면서 찾아내야 되는 상황.. 이제 농땡이 칠 시간도 없어져가는데. 큰일이다.

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Johan Kim hiphapis

TRACKBACK http://hiphapis.net/trackback/188 관련글 쓰기

댓글을 달아 주세요

  1. 우오~~ 놀라운 속도군요 ㅎㅎ

    2011/03/24 20:13 [ ADDR : EDIT/ DEL : REPLY ]

스마트폰 App 제작은 이제 핫이슈가 아니다. 좀 더 정확하게 말하면 이슈거리도 안된다.
스마트폰의 App개발은 홈페이지 만들듯, 이제는 당연한것으로 여겨진다.

그렇다면 App의 접근성은 어떠한가?


우리 솔직해져보자.

개발자중에 '접근성'이라는 단어를 들어본적이 있는 사람이 있는가?
만약 있다면 '접근성'을 App개발과 연관시켜서 생각해본적이 있는가?
그렇다면 접근성을 준수하는 App을 만들려고 노력이라도 해보았는가?

Apple에서 만드는 제품(Product)들은 대부분 접근성을 잘 지켜진 기기(Device)이다. 
그러므로 장비탓을 할 수 도 없다.

과거에는 개발에만 열을 올렸지, 접근성은 철저히 무시되어왔다.
하지만 App을 만드는게 당연해진 지금이라도 접근성을 보장하도록 개발을 해야 하지 않을까?

애초부터 접근성도 함께 관심을 받으며 성장해 나가는것이 최고였겠지만,  지금이라도 접근성을 지켜 App 제작시 접근성도 당연히 신경쓰는날이 오길 기대하며 글을 써본다.

먼저 밝히고 싶은것은, 사실 필자 또한 접근성을 준수하며 App을 개발해본적이 없다.
하지만 이렇게 글을 써내려가는 이유는, 웹 접근성 전문가들중에 App 개발자는 유일무이한 상태(확인된바는 없다)다보니, 나에게 별로 달갑지 않은 책임감이 생겨버렸다.
내가 무슨 대단한 사람이라고 이런 책임감(?)이 느껴지는지 사실 모르겠다.

아무튼, 관련 문서들을 보며 직접 시도를 해보고 배운것을 하나하나 정리한 후 포스팅하게 될것이며, 기본적인 UI에서의 접근성을 다루게 될 것이다.

수정된(Customized) UI를 다루지 않는 이유는, 
  • Customized UI의 방법과 형식은 무한하기 때문에, 이를 다룬다는것 자체가 어폐가 있고
  • 기본 UI의 접근성을 준수하는 방법을 익힌다면, 그 후는 응용이라고 생각하기 때문이다. 


iOS에서 접근성을 지키는게 복잡하거나 어려운게 아니기때문에 연재수가 많아지지는 않을것 같다.(사실 무지 간단하다. 포스팅하는게 무안할정도로. 흠흠;;)
짐작키로 많아야 5회정도?


언제 연재가 완료가 될 지 모르겠지만 스스로를 독려해본다.



Android와 iOS의 접근성을 비교한 글이 있다. 스마트폰 App개발자라면 한번쯤은 읽어봄직 하다. 
Accessibility 서비스로 바라본 안드로이드 vs iOS
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Johan Kim hiphapis

TRACKBACK http://hiphapis.net/trackback/187 관련글 쓰기

댓글을 달아 주세요

  1. 귀중한 자료들이 될 것으로 기대됩니다! 화이팅~~! :)

    2011/03/24 10:49 [ ADDR : EDIT/ DEL : REPLY ]
    • 막상 올릴려고 하니, 포스팅할 내용이 없어서..
      이것저것 붙여서 올려야 할 것 같아요;

      그리고 군우님이 기대하신다고 하니 이거 부담이 되면서도..
      코멘트 달아주셔서 감사한 마음이 교차하네요 ㅎㅎ;
      감사합니다!

      2011/03/24 10:58 [ ADDR : EDIT/ DEL ]

IPhone & IPad/작은 팁2010/07/05 18:05
GlobalVariable.m

static NSString *GlobalVariable;


@implementation GlobalVariable


...


- (void)setGlobalVariables {

...

GlobalVariable = [[NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 0)] retain];

}

여기서 중요한것은 SQLite에서 뽑아온 값을 retain 하는것입니다.
물런 그냥 NSString도 마찬가지겠죠?

뭐 이유는 당연히 릴리즈때문. ㅎㅎ;

ps. 다들 아실만한 것들이라.. 올리기도 민망한;;
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Johan Kim hiphapis

TRACKBACK http://hiphapis.net/trackback/175 관련글 쓰기

댓글을 달아 주세요

IPhone & IPad/작은 팁2010/04/30 06:02

- 증상

앱 개발중 sqlite부분을 구현중이었습니다.

어느순간부터 컴파일시 이유를 알 수 없는 에러가 뜨더군요.

ld: warning: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/usr/lib/libsqlite3.0.dylib, missing required architecture i386 in file
ld: warning: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/usr/lib/libSystem.dylib, missing required architecture i386 in file
ld: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/usr/lib/libobjc.A.dylib, missing required architecture i386 in file
collect2: ld returned 1 exit status
Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 failed with exit code 1

(결론만 알고 싶은분은 아래로 스크롤 퀵다운 하세요 ㅎㅎ)



-하소연잡소리

어느라인에서 에러가 났는지 트래킹도 안해주더군요..

이때 직감했습니다.. "지금시각 새벽3시.. 오늘 잠 다잤다."


sqlite붙이면서 작성했던 코드.. 메쏘드 하나씩 주석으로 처리를 했는데도.. 여전히 저 에러는 뜨더군요.

그래서 코드자체를 지워봤는데도.. 여전히 뜨는겁니다.

혹시나 싶어 초창기때 떠논 스냅샷으로 했는데도 뜨더군요.

이때 직감했습니다.. "지금시각 새벽 3시 30분.. 오늘 잠 다잤다."



맥부기와서 "gcc-4.2 failed with exit code 1"로 검색을 해봅니다.

질문글들은 있는데.. 대부분 무플.. 그나마 있는 답변은 저랑 케이스가 안맞더군요.


구글에서 검색했습니다.

역시 건질거 없습니다.


포기하고 잘까하다가..

시뮬레이터 버전을 바꿔봅니다.

역시 변하는거 없습니다.


침착하게 맘먹고.. 에러코드를 찬찬히 봅니다.

그랬더니 눈에 안보이던 에러코드가 보입니다.

d: warning: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/usr/lib/libsqlite3.0.dylib, missing required architecture i386 in file
ld: warning: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/usr/lib/libSystem.dylib, missing required architecture i386 in file
ld: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/usr/lib/libobjc.A.dylib, missing required architecture i386 in file

이번에 추가한 libsqlite3.0.dylib는 링크파일이어서 못찾나? 했는데...

libSystem.dylib랑 libobj.cd.A.dylib은 기존에 있던것들인데 missing이라고 하는게 의심스럽더군요.

이때 직감했습니다.. "오늘밤 잘 수 있겠구나.."


다시 맥부기로와서

"missing required architecture i386 in file" 검색합니다.

와우!!! 검색결과가 없답니다....


구글로 가서 검색을 합니다.

그중 뭔가 냄새가 나는글을 포착.. 링크에 링크를 타다보니.. stackoverflow.com에 저와 동일한 증상에 대한 질문이 있고 답글이 있더군요. (제가 RoR하는데 종종 stackoverflow.com에서 도움받았는데.. stackoverflow.com최고!!)

거기에 나와있는 해결책대로하니..

젠장......... 잘됩니다 ㅠ,.ㅠ

지쟈스.. 감사합니다. ㅠ,.ㅠ

이거 안되면

#1 일단 걍 잔다

#2 아침에 SDK새로깐다.

#3 그래도 안되면 다....다...다....다시 짠다.


자.. 저의 재미없는 하소연을 읽느라 지루하셨죠~?

이제 그 마법의 비법을 소개해드리겠습니다.



- 해결책

#1 문제가 있는 프로젝트의 프로젝트코드를 textmate나 textedit같은 text editor로 열어제낍니다.

예) example.xcodeproj

전 textmate로 열었습니다.


#2 textmate로 열면 3개의 파일이 나타나는데 그 중 project.pbxproj를 오픈합니다.



#3 그리고 FRAMEWORK_SEARCH_PATHS 혹은 LIBRARY_SEARCH_PATHS의 경로를 상황에 맞게 적절하게 수정해줍니다.

저같은 경우 이렇게 되어 있더군요.

LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"\"$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/usr/lib\"",
"\"$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/lib\"",
);

네.. 그렇습니다 문제는 여기 있었던겁니다.

외부 프레임웤 파일을 추가할때(libsqlite3)이 경로도 변경이 된 것이죠... -ㅅ-; 버그죠. (전 스노우 레오파드입니다.)

벅차오르는 분노와.. 해결할 수 있다는 기쁨과 희망이 오묘하게 교차하는 순간이었습니다. ㅎㅎ

전 아래와 같이 수정해주었습니다.

LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"\"$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/System/Library/Frameworks\"",
"\"$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/Frameworks\"",
);


이렇게 수정후 컴파일하니.. 시뮬레이터 잘 뜹니다.

네.. 제가 짠 sqlite부분은 문제가 없었던 것이었습니다.!!! (역시 난 틀리지 않았어!! ㅎㅎ)

정말로 기쁘더군요..

저의 기쁜 마음을 알아주는건지.. 창밖은 서서히 밝아오고..-ㅅ-


문제를 해결한 기쁜마음이 있을때 이렇게 써놓아야지.. 안그러고 자고나면 귀차니즘으로 안쓸걸 알기에..

이렇게 앞뒤문맥따위 예쁘게 무시해버린 글을 휘갈겨놓습니다.


참고링크http://stackoverflow.com/questions/1456185/build-error-missing-required-architecture-i386-in-file/1467238#1467238

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Johan Kim hiphapis

TRACKBACK http://hiphapis.net/trackback/173 관련글 쓰기

  1. hiphapis의 생각  삭제

    2010/05/02 18:56TRACKBACK FROM hiphapis' me2DAY

    아이폰 앱개발시 코드는 문제 없는데 이유를 알 수 없는 에러가 날때..

댓글을 달아 주세요

  1. coreagt

    감사합니다.
    덕분에 해결했습니다.
    저 같은 경우엔 simulator 쪽 library 경로를 주석 처리 하니 잘 되었네요.

    2011/02/17 11:17 [ ADDR : EDIT/ DEL : REPLY ]
  2. NewToXcode

    *.xcodeproj 경로;;;?? 잘모르겠어요... project.pbxprj 파일또한;;; 어디있는지;

    2011/05/30 02:13 [ ADDR : EDIT/ DEL : REPLY ]
    • xcodeproj는, xcode에서 프로젝트를 생성했을시 생기는 파일입니다.
      이 파일을 열면 해당 프로젝트가 xcode에서 열리게 되지요.

      pbxprj는, 위에 적은 xcodeproj를 textmate(혹은 textedit등의 text기반 editor)로 여시면 나오는 파일입니다.

      2011/06/02 14:42 [ ADDR : EDIT/ DEL ]
  3. 감사합니다.
    거슬리는 오류였는데.. 덕분에 해결 되었네요~!! ^^
    즐거운 하루 보내십시용~! ^^

    2011/07/01 16:52 [ ADDR : EDIT/ DEL : REPLY ]
  4. textmate

    텍스트 메이트를 썼는데 작성자님처럼 안나와요....

    ImageTargets.xcodeproj/
    project.pbxproj
    project.xcworkspace/
    contents.xcworkspacedata
    xcuserdata/
    whalesprogram.xcuserdatad/
    UserInterfaceState.xcuserstate
    xcuserdata/
    whalesprogram.xcuserdatad/
    xcschemes/
    ImageTargets.xcscheme
    xcschememanagement.plist
    이렇게만 뜨고 선택할수없던데 이건 왜그런건가요?

    2011/08/03 14:36 [ ADDR : EDIT/ DEL : REPLY ]
  5. textedit 로 열면 .xcodeproj 파일이 안열리네요 ㅠㅠ
    비활성화된 버튼상태 ㅠㅠ

    2011/08/06 14:28 [ ADDR : EDIT/ DEL : REPLY ]