본문 바로가기

ios

iOS개발하기 #36. UISearchDisplayController(2) <UISearchBar, NSThread, JSON, NSRequest> 오늘의 주제 1. UISearchBarDelegate 2. Daum Open API 3. NSThread 4. JSON parsing (JSONSerialization) 서른 여섯 번째 시간입니다.^^ 지난 번에는 계속 포스팅을 위해 이것저것 준비를 해 두었지요? 지난 번 포스팅에 계속 이어지는 포스팅 입니다~ 2012/05/30 - [iOS Dev/함께해보기] - iOS개발하기 #35. UISearchDisplayController(1) 오늘은 스레드와 리퀘스트 그리고 JSON 파싱에 대해 중점적으로 진행해 봅니다. 자~ 출발합니다~! # UISearchBar 일단, 검색바에 검색어를 입력하였을 때, 그리고 검색 버튼은 눌렀을 때 검색을 시작하려고 합니다. 그래서 검색바 델리게이트 레퍼런스로 와서 그에.. 더보기
iOS개발하기 #35. UISearchDisplayController(1) <UISearchBar, UITableView> 오늘의 주제 1. UISearchDisplayController 서른 다섯 번째 시간입니다.^^ 지난 번에까지는 객체간의 데이터 전달에 대해 알아보았습니다. 잘 알아두셔야 할 부분들일 거예요 ㅎ 오늘 부터 시작할 포스팅은 꽤나 길게 이어질 것 같습니다. 여러분께서 원하던 기능들을 많이 많이 해볼거거든요..ㅎ 제목은 UISearchDisplayController 지만 이 안에는 엄청나게 많은 내용들을 담게 될 것입니다. 요 녀석에 많은 것을 활용 해 볼 수 있는 요소들이 있거든요 ㅎ 자 일단 결론부터 말씀을 드리자면 검색결과 컨트롤러 다루기 테이블뷰 다루기 검색바 다루기 스레드 다루기 URL Request 전송 JSON 파싱 XML 파싱 여러분들께서 궁금해 할 만한 내용들을 대폭 담아 볼 예정입니다. 원래.. 더보기
#pragma mark - 소스코드 이쁘게 관리하기 개발하다가 소스코드가 길어지고 지저분해 지다보면 어떤 메소드가 어디에 있는지 찾아가기 굉장히 불편해지고 가독성이 떨어지게 됩니다. 그래서 소스코드를 약간 이쁘게 정리해 둘 필요가 있습니다. 습관을 들여놓으면 아주 좋아요 ㅎ #pragma mark 요녀석을 사용하면 좋은데요~ 한 번 보여드릴게요~ 코드 오른쪽 상단에 보면 바로갈 수 있는 네비게이터가 있는데요 한 번 클릭해 보시면 구현되어있는 변수들과 메소드들이 쭈욱 나열될 거예요. 그런데 영역별로 마크를 남겨주면 알아서 보기 좋게 정리해 줍니다~ 이렇게 이쁘게 깔끔하게 말이죵~ㅎㅎ 정리 되어있지 않았을 때입니다. 소스코드 정말 얼마 되지도 않는 컨트롤러인데도 자신이 원하는 메소드 한 번에 찾아가기 거의 불가능 하다고 봐야겠죠^^; 요로코롬 유용한 녀석이 .. 더보기
iOS개발하기 #34. NSNotificationCenter (노티피케이션센터) 오늘의 주제 1. NSNotificationCenter 서른 네 번째 시간입니다.^^ 지난 번에는 델리게이트 프로토콜을 이용하여 데이터를 주고 받는 것을 해 보았습니다. 어떤가요 흥미로우신가요?ㅎ 프로토콜을 사용하여 통신하는 방법도 있지만, iOS에서는 또하나의 흥미로운 기능을 제공합니다. 바로 노티피케이션 센터라는 녀석인데요, 우리가 푸쉬 알림 받는 그 노티피케이션이 아닙니다 ㅎㅎ 그럼 일단 한 번 시작해 보도록 하겠습니다. 그 전에 딕셔너리에 대한 이해가 조금 필요로 합니다. 2012/04/20 - [Objective-C] - Objective C . 딕셔너리, 배열 ( NSDictionary, NSArray ) 자 떠나볼까요?ㅎ 고고씽~~~~~~~~~~~~ # NSNotificationCenter?.. 더보기
iOS개발하기 #33. Protocol, Delegate (프로토콜, 델리게이트) 오늘의 주제 1. Protocol 2. Delegate 만들어 보기 서른 세 번째 시간입니다.^^ 지난 번에는 유저의 응답을 받아 볼 수 있는 피커뷰에 대해 알아보았습니다~ 이번에는 프로토콜이라는 것에 대하여 알아보도록 할게요~ 잘만 사용하면 좋은 녀석입니다 ㅎ 스따뚜~~~~~~~~~~~~ # Protocol이란? 네트워크에서 프로토콜이라 함은 일종의 통신규약을 말하는데요, Objective-C에서는 약간 다른 의미로 사용됩니다. 음... 뭐 굳이 말하자면 클래스간의 통신 규약이라고도 말할 수 있겠네요 ㅎ 프로토콜은 일정한 메소드를 통하여 클래스 간에 통신을 할 수 있는 통로를 제공합니다. 어떠한 객체에서 다른 객체로 데이터나 메세지를 전달하고 싶을 때 사용할 수 있습니다. 말로는 잘 느낌이 안오시죠?ㅎ.. 더보기
iOS개발하기 #32. 피커뷰(UIPickerView) 오늘의 주제 1. UIPickerView 2. UIPickerViewDelegate 서른 두번째 시간입니다.^^ 지난 번에는 뺑글이를 돌려보셨겠지요?ㅎ 오늘은 사용자의 입력받기를 해 볼까 합니다~ 그 중에 하나로 피커뷰를 해 볼게요~ 그 전에 이제껏 우리가 사용했지만 제대로 알지 못했던 NSArray에 대해 조금 알아보고 오시면 좋겠습니다. Objective-C 카테고리에 포스팅이 되어있어요^^* 2012/04/20 - [Objective-C] - Objective C . 딕셔너리, 배열 ( NSDictionary, NSArray ) 자, 다 보셨으면 출발 해 볼까요?ㅎ 스따뚜~~~~~~~~~~~~ 전에 추천 한 방 어떠세요?ㅎ 저에게 큰 힘이 됩니다~^^* # 피커뷰란? 피커뷰에는 크게 두 가지 종류가.. 더보기
iOS개발하기 #31. UIActivityIndicator, NSThread 오늘의 주제 1. UIActivityIndicator 2. NSThread 서른 한 번째 시간입니다.^^ 지난 번에 소리재생을 했는데, 화면이 멍 때리는 현상이 발생하였죠?ㅎ 자, 그녀석을 해결할 방법을 찾아봅시다. 그리고 로딩할 때 그냥 로딩되면 심심하니까 뺑글이도 한 번 넣어줘 봅시다~ 스따뚜~~~~~~~~~~~~ 그 전에 추천 한 방 어떠세요?ㅎ 저에겐 큰 힘이 됩니다 +_+ㅋ # NSThread 일단, 화면이 멈추는 것 먼저 해결을 해 보도록 할게요. 스레드 라는 녀석이 있습니다. 우리가 이제까지 일반적으로 코드를 통해 동작시킨 녀석들은 거진 다 메인 스레드에서 동작을 하게 됩니다. 그런데 메인 스레드에서 무슨 일을 명령을 하면 어떤 한 일처리가 끝나기 전까지는 다른 일처리를 하지 못합니다. 다시.. 더보기
iOS개발하기 #29. 경고창 (UIAlertView) 오늘의 주제 1. UIAlertView 스물 아홉번째 시간입니다.^^ 지난 번까지는 웹뷰에 대해서 알아보았습니다. 이번에는 AlertView에 대해서 알아보도록 하겠습니다. AlertView는 xib에서 생성이 되지 않고 코드로 생성을 해 주어야 합니다.ㅎ 그럼 일단 시작해 봅시다~! # UIAlertView 자, 일단 AlertView는 delegate가 없으면 무용지물입니다. 이녀석은 그냥 얼굴만 비출 뿐 아무것도 하지 않으려고 합니다. 그래서 우리는 ViewControllerForWeb에게 AlertView의 델리게이트를 해달라고 말할거예요. 자, 그리고 AlertView도 하나가 아니면 구분을 할 수 없기 때문에 태그를 넣어줄 예정이예요. 그래서 enum으로 먼저 어떻게 해줄지 정해줍니다. enu.. 더보기
iOS개발하기 #28. 웹뷰 (WebView) <2> - delegate 사용해 보기 오늘의 주제 1. UIWebView 2. UIWebViewDelegate 스물 여덟번째 시간입니다.^^ 지난 번에는 웹뷰를 만들고 화면에 웹페이지를 띄워 만들어 보았습니다. 자 그럼 오늘은 웹뷰와 함께 이것저것 해 보아야 겠지요?ㅎ 긴 말 없이 시작해 봅니다 ㅎㅎ p.s. 추천 한 방 어떠세요?ㅎ # UIWebView - delegate 웹뷰를 화면에까지 띄워보았으니 이제는 앞으로 가기 뒤로가기 등,... 버튼 동작들을 구현해 봅니다. 자, 일단은 지난번에 버튼들에 태그를 달아 두었던 것 기억하시죠? 그 태그를 보다 직관적으로 표현해 보기 위하여 #define과 enum을 사용하여 구현해 보았습니다. #define과 enum은 뭐냐구요? 아... 음... C에서 나오는 녀석들인데, 제가 C 카테고리에서 .. 더보기
iOS개발하기 #27. 웹뷰 (WebView) <1> 오늘의 주제 1. UIWebView 2. UIToolBar 스물 일곱번째 시간입니다.^^ 지난 번까지는 프로젝트를 계속 사용했는데, 이번에 새로 프로젝트를 하나 만들어 보겠습니다. 어찌되었든간 지난 번 까지 했던 내용들은 마음에 드셨는지 모르겠습니다...^^ 지금까지 해 본것들은 예제이고 앞으로도 예제를 통해 내용이 진행되니, 디자인이 이쁘지 않더라도, 지금 당장 뭐가 없어보여도 쭉 한번 따라해 보세요..^^ 그럼 어느순간 머릿속에 정리가 되고 느낌이 올 때가 있습니다. 그 때, 필요한 것들만 검색하고 취합해서 자신만의 프로젝트를 만들어 가시면 됩니다. 아직 그정도는 안온 것 같죠?ㅎ 그럼 오늘 또 새로운 세상을 향하여 한 걸음 내딛어 봅시다^^ 출발~! # UIWebView, UIToolBar UIWe.. 더보기
iOS개발하기 #26. 이미지 피커 (UIImagePickerController) <사진찍기, 사진 불러오기> 오늘의 주제 1. UIImagePickerController 2. UIImagePickerControllerDelegate 스물 여섯 번째 시간입니다.^^ 지난 번 액션시트에 이어 이어지는 포스팅입니다^^ 2012/04/21 - [iOS Dev/함께해보기] - iOS개발하기 #25. 액션시트 (UIActionSheet) 이번에는 액션시트를 눌러서 적절히 사진을 불러오는 방법에 대해 알아봅니다~ 재미있겠지요?ㅎㅎ 고고~~~~~~~~~~~~~~~~~~~~~ ★ 이번 포스팅은 Potomac님의 요청으로 진행해보았습니다 ^^* 사실 이거 해봐야지 하다가 마침 Potomac님께서 요청해 주셔서 이제야 합니다 ㅎ 고맙습니다~! # UIImagePickerController 자, 이제 사진을 불러와 보도록 할게요~ .. 더보기
iOS Simulator에 사진 넣기 iOS 시뮬레이터의 사진첩에 사진을 넣어봅시다. 시뮬레이터를 실행하고 그냥 아무때나 상관없이 원하는 사진을 시뮬레이터로 끌어다 놓습니다. 그러면 safari창이 뜨는데요, 이미지를 잠시 꾹 눌러줍니다. 그러면 이렇게 액션시트가 뜨는데 거기서 이미지를 저장해 주면 사진첩에 저장이 됩니다. 가끔 정상적으로 저장이 안되는 경우가 있다고 하는데, 다른 이미지로 하시면 잘 될거예요~ jpg나 png 이미지로 시도해 보세요~ㅎ ↓↓↓도움이 되었다면 추천 한방 꾹 눌러주고 가시는 건 어떨까요? ^~^ 사랑합니다~ ↓↓↓ 더보기
iOS개발하기 #25. 액션시트 (UIActionSheet) 오늘의 주제 1. UIActionSheet 2. UIActionSheetDelegate 벌써 스물 다섯 번째 시간입니다.^^ 애니메이션은 흥미로우셨나요?ㅎ 이제 슬슬 뭔가 흥미가 오시는지, 아니면 아직도 뭐가 뭔지 잘 모르시는지..ㅋㅋㅋ 피드백이 없네요+_+ 이런이런 점이 부족하다 말씀해 주시면 좀 더 발전이 있을 것 같은데..^^; 자 그럼 서론은 이만 마치고 새로운 주제로 넘어가 봅시다~ 이번 주제는 UIActionSheet 입니다! 액션 시트가 뭐냐구요? 이제 알게 되겠죠?ㅎ ★ 이번 포스팅은 Potomac님의 요청으로 진행해보았습니다 ^^* 사실 이거 해봐야지 하다가 마침 Potomac님께서 요청해 주셔서 이제야 합니다 ㅎ 고맙습니다~! # UIActionSheet UIActionSheet는 사용.. 더보기
Objective C <11>. 딕셔너리, 배열 ( NSDictionary, NSArray ) 오늘의 주제 1. NSDictionary, NSMutableDictionary 2. NSArray, NSMutableArray 열 한번째 시간입니다.^^ 지난 번에는 상속이라는 또 하나의 중요한 개념에 대하여 알아보았습니다. 이번에는 Objective-C에서 가장 흔하고 많이 쓰이는 클래스 중에 자료를 보관할 수 있는 녀석들에 대해 알아보도록 하려고 합니다. 딕셔너리랑 배열인데요, 한 번 봅시다~ 어휴~ 봄감기 때문에 아주 죽겠네요+_+ # NSArray 배열이란??? C를 배운 분들이라면 배열을 아실겁니다 ㅎ 하지만 여기서 말하는 녀석은 메소드까지 가지고 있는 클래스 입니다. 단순한 자료형이 아니죠~ 뭐 약간의 사용개념을 보면 C의 Linked-List(연결 리스트)와 비슷하다고 생각하시면 되겠습니다~.. 더보기
iOS개발하기 #24. 애니메이션(UIViewAnimation)<2> Flip, Curl 오늘의 주제 1. UIViewAnimation 사용해 보기 스물 네 번째 시간입니다.^^ 지난 번 포스팅에 이어 이번에도 애니메이션 입니다^^ 조금은 다른 애니메이션이예요~ㅎ 지난 번 포스팅을 보고 오셔야 좀 더 좋을 것 같습니다~! 2012/04/16 - [iOS Dev/함께해보기] - iOS개발하기 #23. 애니메이션(UIViewAnimation) 움직이기, 사라지기, 나타나기 자 그럼 출발~~~~~~~~~~~~ 추천 한방 꾸욱~~~~~~ ^ㅇ^ # 뷰 애니메이션 자, 계속 사용하던 뷰 컨트롤러를 사용합니다.ㅎ MyAnimationViewController xib파일로 와서 이번에는 ImageView하나를 끌어옵니다. UIImageView도 UIView의 하위 클래스 이기 때문에 애니메이션 적용이 가.. 더보기
iOS개발하기 #23. 애니메이션(UIViewAnimation)<1> 움직이기, 사라지기, 나타나기 오늘의 주제 1. UIViewAnimation 사용하기 스물 세번째 시간입니다.^^ 지난 번에는 스크롤 뷰에 대해 조금 알아보았습니다. 스크롤뷰는 정말 많이 쓰이고 있지요~ 이번에는 조금 재미있는 애니메이션을 사용해 봅시다~ 자, 그럼 긴말 없이 시작해 볼까요 ㅎㅎ # UIViewAnimation을 사용할 수 있는 녀석들은? 말 그대로 View Animation입니다. 즉, UIView 의 하위 클래스라면 모두 사용 가능하다고 볼 수 있습니다. 다시 말해서, 우리 눈에 보이는 거의 모든 녀석들은 이 애니메이션을 사용할 수 있다는 뜻이기도 합니다^^. 이미지 출처 : 윈플. 님의 블로그 위의 이미지를 보시면 UIView의 하위 클래스들을 볼 수 있습니다. 우리 눈에 보이는 거의 모든 놈들이 하위에 있음을 .. 더보기
iOS개발하기 #22. 스크롤 뷰, Scroll View(3) 페이징<2>, 페이지컨트롤 오늘의 주제 1. 페이지 컨트롤 달기 스물 두번째 시간입니다.^^ 지난 번에 이어서 이번에도 스크롤 뷰를 조금만 더 가지고 놀아봅시다.이번에는 정말 간단한거..ㅎㅎ 자, 그럼 긴말 필요없이 고고~ # 페이지 컨트롤 달기 세번째 뷰 컨트롤러 위에 페이지 컨트롤을 올려줍니다. 스크롤 뷰 위에 올리는거 아니예요~ 잘 보세요~그리고 아울렛을 요로코롬 연결 해 줍니다~이렇게 자동으로 연결이 되었겠죠?ㅎ ㅎㅎ 구현파일로 와서 코드 한 줄 추가해 줍니다~실행!!~~~~~~!!!!!!!!!짜잔~~~~~~~~ 아무것도 안보여ㅋ요ㅋ 물론... 전부 흰색이니까..ㄷㄷ그래서 페이지 컨트롤 배경색을 검정색으로 바꾸어 줍니다.실행하면 이제 보이네요 ㅎㅎㅎ 어라? 근데 페이지가 잘못나와요~페이지 컨트롤은 당연히 0페이지 부터 시작.. 더보기
iOS개발하기 #21. 스크롤 뷰, Scroll View(2) 델리게이트 오늘의 주제 1. 스크롤 뷰 델리게이트 알아보기 스물 한번째 시간입니다.^^ 저번에는 스크롤 뷰 페이징을 한 번 해봤습니다~그런데 그것만 보면 재미없지용?ㅎㅎ델리게이트 복습겸 해서 스크롤뷰 델리게이트 연결을 해 봅시다. 자 그럼 출바알~~~~~~~~~~~~ # 스크롤 뷰 델리게이트 델리게이트를 사용하려면 헤더에서 "나 델리게이트임" 이라고 말해줘야 한다고 했었죠?ㅎ이렇게 이쁘게 말해줍니다.그리고 나서 스크롤뷰 델리게이트 레퍼런스를 찾아봅니다.마침 그냥저냥 한 번 해볼만한 녀석이 보이는군요 ㅎ-scrollViewDidEndDeceleration: 이라는 녀석을 클릭해 봅시다.설명에는 '델리게이트에게 스크롤 움직임 감속이 끝났음을 말해줌" 이라고 써있네요.즉, 움직임이 멈춘것을 감지하여 말해준다는 거겠죠.레.. 더보기
iOS개발하기 #20. 스크롤 뷰, Scroll View(1) 페이징<1> 오늘의 주제 1. 스크롤 뷰 만들어 보기2. 스크롤 뷰로 페이징 해보기 벌써 스무 번째 시간입니다.^^ 지난 번까지 델리케이트와 데이터소스에 대해 알아보았습니다.정말 중요한 개념이니까 이해될 때 까지 실습해 보아야 합니다.그런 의미에서 다음 번에는 스크롤뷰 델리게이트도 잠깐 가지고 놀아볼 거예요~ 자 그럼 스크롤뷰 한 번 만들어 볼까요? 스따뚜~~~~~~~~~~~~ # 스크롤 뷰 만들기 새로운 뷰 컨트롤러를 만들어 봅시다.세번째 뷰 컨트롤러를 만듭니다. 자, 스크롤뷰를 쓰윽 끌어와 주시구요~ 아시죠?ㅎ 아울렛을 이렇게 연결 해 줍니다! 그 다음에 거꾸로 델리게이트도 연결해 줍니다. 다음 시간을 위하여^^* 이렇게 연결이 되었으면 잘 하신거예요~ 그 후에 스크롤뷰 옵션에서 Paging Enable을 체크해.. 더보기
Xcode4 xib의 객체 소스파일과 쉽게 연결하기 xib에서 오브젝트들 화면에 구성해 놓고 아울렛이나 액션 연결하려면 소스파일로 왔다가 갔다가... 귀찮으셨죠?한방에 해결해 봅시다 ㅎㅎXcode4에서 이런 좋은 기능을 제공합니다~일단 우선 Editor모드를 Show the Assistance editor 모드로 변경하면 두개의 소스파일을 동시에 볼 수 있죠?(캡쳐에서 오른쪽 위에 네모표시가 있습니다)그 모드에서 xib파일과 헤더파일을 동시에 열어줍니다.왼쪽 화면에 파일 내용을 띄우고 싶으면 파일을 클릭하면 되고, 오른쪽에 파일 내용을 띄우고 싶다면 Alt+클릭을 하면 됩니다.그 후 아래 이미지처럼 마우스 오른쪽 버튼 드래그&드랍 또는 Ctrl+드래그&드랍 해주시면 너무나 쉽게 Action 또는 Outlet을 선언해 줄 수 있습니다^^* ↓↓↓도움이 되었.. 더보기