카테고리 없음 2011. 11. 21. 01:10

스토리보드로 탭바안에 내비게이션 컨트롤러를 넣어보자~!


이번 강좌는 짧게 끝날것 같네요 스샷도 7장정도? 면 끝날것같습니다

그정도로 간단하네요 ㅎㅎ

지난번...그러니까 이 강좌 바로 아래에 있는


"스토리보드로 탭바컨트롤러를 쉽게 사용해보자!"

에서 사용한 프로젝트를 그대로 이어서 하겠습니다

그럼 시작~! 

지난번에 여기까지 했었지요,,?

이번강좌의 목표는 첫번째 탭에 네비게이션컨트롤러를 넣는것 입니다. 



따라서 일단 첫번째 탭과 연결된  redsubmarine1 의 뷰와 연결된 Segue를 끊어줍니다



그리고 그사이에 네비게이션 컨트롤러를 갖다 붙입니다 우측에 보시면 선택된 네비가 보입니다.


그리고 네비게이션 컨트롤러를 끌어오면 따라서 끌려오는 루트뷰는 제거해줍니다

기존 갖고 있던 redsubmarine1뷰를 그대로 쓰려하거든요


그리고 네비게이션 컨트롤러가 제대로 작동하는지 확인하기 위해 redsubmarine1 뷰에

버튼을 넣고 그 버튼을 누르면 넘어갈 또 다른 뷰를 만들겠습니다

우측 하단 제일 위에 보시면 view controller가 있는데 끌어다 셋팅합니다.


여기까지가 사용할 뷰를 끓어다 놓은 모습이고 이제는 해당 뷰들을 이어주기만 하면 됩니다.


지난번에 했듯이 뷰와 뷰사이를 마우스 우클릭 드래그로 이어주시면 되겠습니다

탭바 컨트롤러와 네비게이션 컨트롤러를 relationship-viewControllers로 이어줍니다.



네비게이션 컨트롤러와 redsubmarine1뷰는
relationship-rootviewController 로 이어주시구요~!


마지막으로 redusubmarine1과 옆의 뷰는 (저는 redsubmarine1-1이라 했습니다)
push로 이어줍니다 navigation으로 작동할거니깐요~

그리고 실행해보시면~!



이렇게 네비로 떠있는 화면을 볼수 있습니다
나 네비요~! 라고 위에 바도 떠있는걸 볼수 있네요 ㅎㅎ 
버튼을 눌러보면~



이렇게 푸시로 잘뜨고 위에 Back버튼도 제대로 작동하는것을 볼수 있습니다

물론 하단 탭을 누르면..~


지난시간에 했듯 이런화면이 잘뜨네요



아마 다음 강좌가 스토리보드 관련 마지막 강좌가 될텐데요

스토리보드에서 테이블뷰를 이용해보도록 하겠습니다

코딩을 지양하는 저로서는 반가운 기능이 생겼더군요

매번 약속을 못지키는 느낌인데...

이번에는 최소한 화요일까지.. 진짜.. 올려보도록 하겠습니다 ㅋㅋ

그럼 저는 이만 리버풀VS첼시 전을 보러 안뇽~!

리버풀이겨라!! ㅋ 

카테고리 없음 2011. 11. 13. 22:20

스토리보드로 탭바컨트롤러를 쉽게 사용해보자!

안녕하세요 포스팅이 늦었습니다.
이게 다 iPhone4S 때문인거 아시죠?? -_-;;
4s 리뷰 이런거는 다른분들 많이 하시니 패스하고...

저는 기초 개발 포스팅에 몰두하겠습니다..ㅋㅋ;;

이번 포스팅은 스토리보드를 이용해서 탭바컨트롤러를 쉽게 사용하는 것입니다.

스토리보드로 탭바 껍데기만 만들어 놓으면
각 탭바..예를 들어 1,2,3,4 탭이 있다고 한다면

각 1,2,3,4의 뷰에 대한 클래스를 따로 구현해놓고 연결해주시면 될것 같네요

이번 강좌는 탭바에 탭 2개를 만들고 실행하는걸로  가보겠습니다

그럼 시작할게요~!

먼저 empty 프로젝트를 만듭니다
이름은 StroyTabbar 로 하겠습니다

4.2 에서는 ARC (오토매틱 레퍼런스 카운터)라고 새로운게 생겼습니다..만
아직 남들한테 알려줄정도는 아니라...설명은 생략하고... 일단 사용하지 않는걸로 강좌를 쓰겠습니다.사용해도 강좌에는 지장은 없어요 코딩이 없기때문에~! ;)



다음은 스토리보드강좌이므로 스토리보드파일을 만들어야겠죠
CMD +N으로 유저인터페이스 - 스토리보드를 만들어줍니다 이름은 Stroyboard 그대로 사용했어요

 

스토리보드가 만들어지면 스토리보드에서 우측하단에서 뷰컨트롤러를 끌어다 놓아줍니다.
요놈이요~ 


그러면 스토리보드상에 이렇게 등장하게 됩니다 뷰가요
지난번 강의때 앱델리게이트.m 파일에서 디드피니쉬런칭 머시깽이 메소드 기억하시죠??
거기서 window를 자동 생성하고 뿌려주던것 기억하시나요?? 기억하셔야할텐데...
거기서 return self; 문장만 남기고 주석처리해주셔야합니다! 모르시겠다면 일단 스샷보면서 따라와주세요 이따가 나올겁니다..ㅎㅎ


다음으로 이 뷰에다가 탭바를 올려줘야하죠
 

스샷을 봐주세요
먼저 해당 뷰컨트롤러가 선택이 되어있어야 합니다!
Editor - 임베디드 인 - 탭바 컨트롤러를 선택해주세요.
회색으로 나오면 해당 뷰컨트롤러가 선택이 되었는지 다시 확인해주세요!
 

 그러면

요렇게 떠야합니다 잘 되고 있나요~?


탭바는 두개이상의 뷰가 있어야 효력을 발휘하죠
뷰가 하나라면 탭바가 있을 이유가 없잖아요 자리만 차지하고...
차라리 광고다는게 낫겠다 고자리에... 


해서... 뷰를 추가하기 위해 뷰컨트롤러를 추가해줍니다
처음에 추가하듯이 우측하단 뷰컨트롤러를 끌어다 놓아줍니다
이놈이요 이놈..


추가해주셨나요~?



추가한 뷰컨트롤러를 탭바컨트롤러와 연결하기 위한 작업을 해줘야겠죠?
우측하단에 탭바 아이템이란 항목이 있습니다 이놈이요~


이놈을 새로 만든 뷰에 떨궈주면 아래스샷과같 이
탭바가 생기게 됩니다 


탭바컨트롤러 화면과 새로 만든화면을 이어줍니다
방법은 탭바컨트롤러 화면을 우클릭하고 끌어다가 새로만든화면에 이어주면 아래스샷처럼 뜰겁니다
 



릴레이션십 - 뷰컨트롤러스 를 선택해줍니다 탭바컨트롤러와 이어주기위한 작업이니깐요.
셋팅은 끝났습니다 아까 잠깐언급했듯이
스토리보드를 프로젝트와 연결을 해줘야하죠 또한 소스상에서 자동생성된 윈도를 없애줘야합니다 

먼저 스토리보드를 이어주도록 하죠



프로젝트의 - 타겟 부분에 보시면 메인스토리보드 항목이 있습니다
이부분에서 만들어놓은 스토리보드를 선택해주도록 합니다

그리고 앱델리게이트.m파일에서 아래스샷과 같이 저 부분을 주석처리해줍니다
삭제하시든지요...ㅎㅎ


그리고 실행해보시면~!
아래와 같이 나오게 됩니 다!

아이콘과 레이블은 다 넣으실줄 아실테니까 설명 패스~!ㅎㅎ



이상 스토리보드로 탭바컨트롤러를 다루는 방법에 대해 강좌를 마치겠습니다


P.S
블로그에 구글 애드센스를 달았습니다
강좌를 쓰기 시작하면서 반응이 좋아서 달아놓은것은 절대 아니고...
기존부터 있었는데.. 사정이 있어 보이지 않았었을뿐...ㅠㅠ 

방해되지 않는선에서 달아 놓았으니 신경쓰지 말아주세요~^^

좀 쉬었다... 혹은 내일이나 모레..(아마 결국 오늘 쓰게 될지 모르겠습니다만...)
다음 강좌는 위 탭바 프로젝트를 이용해서 탭바안에 네비게이션 컨트롤러도 추가하는것을
준비하겠습니다.

일단 이번 강좌는 여기까지~~ 안뇽~

AppDev 2011. 11. 8. 03:07

XCode4.2에서 스토리보드를 사용해보자!! [그 2편]

프로젝트는 1편의 프로젝트를 이어서 하겠습니다

먼저 버튼을 달아야 액션을 줄수가 있죠 버튼을 달아줍니다
레이블은 뽀나쓰~ 


우측에서 뷰컨트롤러를 끌어다가 옆에다 놔줍니다 버튼을 눌렀을때 나오게 하려는 뷰예요
꾸미기 귀찮으니 화이트 그대로 가겠습니다!


버튼을 마우스 우클릭하시고 끌어다가 해당 뷰에 놓아주면 항목에 3개가 나올겁니다
모달, 네비, 커스텀...
모달로 연결해줍니다 일단은 화면 전환이 되는것을 보는게 목표니깐요!


그러면 아래와 같이 가운데 연결표시가 된것을 볼수 있습니다!
실행해보시면 버튼이 눌렸을때 하얀화면이 나오는것을 볼수 있고 애니메이션도 먹는것을 볼수 있습니다. 이 애니메이션을 바꿔주고 싶으면 우측에 트랜지션을 바꾸면 됩니다
기존 소스에서 모달머시깽이 스타일어쩌구 코딩해야했던것이 마우스 손가락질 하나로 할수 있게 되었습니다 ㅠㅠ엉엉..


하지만 현재 우리의 앱에는 치명적인 매력... 아닌 치명적인 버그가 있죠...
들어올땐 맘대로지만 나갈땐 아니란다...-_-
전화면으로 나갈수가 없습니다... 모달을 해제하는것은 아직 스토리보드에서 지원을 안하는지 저만 모르는지... 알순 없지만~.. 어쨌든...
화면전환을 자유롭게 하기위해... 네비게이션 컨트롤러를 이용해보도록하죠

우측 하단에 라이브러리에서 네비게이션 컨트롤러를 끌어다 놓겠습니다 하단 화면같이요~!
네비게이션 컨트롤러를 가져오면 하나의 뷰가 딸려오는것을 볼수 있습니다
루트뷰컨트롤러이지요.. 하지만... 루트뷰컨트롤러는 이미 만들어놨습니다
빨강화면으로 말이죠 단칼에 삭제를 해줍니다 그리고 네비게이션 컨트롤러를 우클릭하고
빨강화면으로 이어줍니다! 

그러면 하단과 같이 메뉴가 뜰겁니다.
아까와 같이 3개에 하나더 생겼죠?? 네비게이션의 루트뷰로 쓸것이므로
맨위의 릴레이션쉽 - 루트뷰컨트롤러에 이어줍니다
 


그리고 화면정리를 해주시면서.... 스샷이 하나가 빠졌는데...
이 쯤되면... 막나가자는거...가 아니라.. 빨강화면 좌측에 화살표가 2개 있었을겁니다
그중에 화살표 반쪽짜리를 끌어다가 네비게이션컨트롤러에 놓아줍니다
아래와 같이나오면 성공!
그리고 실행을 해주죠...아.. 실행해주기전에 하단 스샷에 또 빠졌는데...
아까 빨강화면과 하양화면을 이어줄때 모달로 했던것을 네비로 바꿔주셔야합니다!!
이점 잊지 말고 실행해주시면 짜잔!!



초기화면은 빨강화면이 나오고 버튼이 눌리면 아래 화면과 같이 나오면서 네비게이션이 제대로 작동하는것을 볼수 있습니다.


이상으로 일단 스토리보드 첫 강의를 마치도록 하겠습니다 스샷보면 아시겠지만...
새벽 3시라 슬슬 눈이 감기네요;;

다음강좌는 스토리보드를 사용해서 탭바, 네비게이션, 둘다 짬뽕해서 쓰는법을 써볼 생각입니다.
별일 없으면 이번주내로 쓰게 될것 같네요

질문 해주시면 아는선에서 답변드리겠습니다

그럼 오늘은 이만 뿅! 

AppDev 2011. 11. 8. 02:37

XCode4.2에서 스토리보드를 사용해보자!! [그 1편]

안녕하세요
근 한달만의 포스팅입니다
이번에는 스토리보드 사용법에 대해 강의를 진행하도록 하죠
초보자분들을 위해,
또 초보자인 제가 편하기 위해...
이번 강좌에는 코딩이 거~의 없다는 것을 선포(?)하고 시작하겠습니다 !

 강의 순서는
음... 먼저 Empty 프로젝트를 만들어서
스토리보드를 추가하고 이를 프로젝트에 어떻게 연결시키는지...(정말 간단합니다)
또 프로젝트상에서 화면 전환은 어떻게 하는지
그리고 네비게이션, 탭바 컨트롤러 추가도 알아보겠습니다

그럼 시작해보도록 하지요~


먼저 아래와 같이 Empty 프로젝트를 하나 생성해주세요


프로젝트 이름은 StoryboardTest로 하겠습니다
Xcode4.2에 맞게 ARC도 활성화 시키도록 하죠 체크해주고 넘어갑니다~!
Class Prefix 항목을 궁금해하시는분도 계실텐데요
Xcode4.2에 올라오면서 ApplicationNameAppDelegate.h 처럼 앞에 프로젝트 이름이 붙던것이 없어지고 AppDelegate.h로 이름이 간단해졌습니다.
하지만 예전이 그리우신분들... 해당항목에 StoryboardTest를 써주시면
프로젝트이름이 앞에 붙던 기존방식대로 소스파일이 만들어지게 됩니다
저는 새로워진게 편하네요 비워놓고 진행하겠습니다


얍~! 만드셨으면 싸~~~한게...
앱 델리게이트 파일만 뎅그러니 있을겁니다. 아 물론 서포팅파일 안에는 메인파일도 있고
잡다한것도 몇개 있지만요.

바로 스토리 보드파일을 만들도록 하죠
커맨드+N을 누르시면 다음 화면이 나오게 됩니다
죄측 상단에 세번째 User Interface를 선택하시고 스토리보드 선택하시고 넥스트~!
이름은 초기이름 그대로 Storyboard.storyboard 를 사용하겠습니다


만들어졌으면 휑~~하죠?? 수학시간도 아니고 모눈종이만 있는것이...
우측 하단에 롸이브러리에서 뷰컨트롤러를 가져다 놓아줍니다
그러면 아래 스샷처럼 나오게 될겁니다

일단 스토리보드를 소스와 연결시키도록 하죠 스토리보드와 소스가 잘 연결되었는지 확인하기 위해 스토리보드의 뷰를 빨강색으로 칠해보도록 하겠습니다
우측에 Background에 맘에드는색을 칠해주세요 저는 역시 빨강선택~!
그러면 아래 스샷처럼 되셨을겁니다


스토리보드와 소스를 연결합시다 프로젝트에 타겟으로 가셔서
아래스샷에 저부분에 스토리보드를 선택해줍니다!
그리고 실행!하면 빨강화면이 뜰까요 안뜰까요~?? 유후~~


짜잔!~!
헉...


머야... 안되네...-_-;; 가 아니고...아래 스샷을 봐주세요
기존 xib파일, 즉 닙파일은 소스보다 나중에 불려왔습니다 그래서 스토리보드도 그렇지 않을까..
해서 실행한 결과가 위와 같습니다. 스토리보드가 먼저 불려오고 소스가 나중에 불려진것이지요

AppDelegate.m파일에서 디드삐니쉬옵션스 항목을 봐주세요
아래스샷에 있네요 선택된부분에서 화이트로 칠하라는 명령이 나중에 불려오기때문에
위에서 하얀화면이 나온것을 짐작할수 있습니다.
전부 주석처리 해줍니다
선택하고 커맨드 + / 해주면 한방에 주석처리~!


주석처리를 해주시고 실행해주시면~!



봐요 빨강화면 나왔죠~?? 후후~
여기까지 매우 쉬운편입니다;; 이제 버튼을 만들고 다음 뷰를 만들고 전환까지 해보겠습니다

처음에 선포한대로 소스한줄 없이요 +_+;;



To Be Continue... -_-a;;ㅎㅎ;