옛글/아이폰 프로그래밍
[iOS프로그래밍] 가로모드, 세로모드 고정시키기
1. 세로 고정 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation ==UIInterfaceOrientationPortraitUpsideDown); } 2. 가로 고정 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation == UIInterfaceOrientationLand..
[iOS프로그래밍] NSDictionary를 파헤쳐보자
NSDictionary. 굉장히 많이 사용됩니다. NSArray 는 배열을 만들어놓고 index 값을 통해 사용을 하게 되지만, NSDictionary 는 Dictionary (사전)처럼 여러 변수를 넣어놓고 찾아서 쓸 수 있습니다. 각 변수는 "key 값"을 통해 찾게 됩니다. 사전에서 "ㄱ"을 찾아 단어를 찾듯이 말이죠. 뿐 아니라 요 NSDictionary는 안에 다른 종류의 객체도 가질 수가 있습니다. (그림출처 : http://blog.yagom.net/218) Dictionary 도 Array 와 같이 수정이 가능한 NSMutableDictionary와 NSDictionary 로 나뉩니다
[iOS프로그래밍] Xcode 4.2 Bad Access 오류는 NSZombieEnabled로 잡자!
가끔 시뮬레이터가 꺼지면서 Bad_Access가 나는 경우가 있더군요... 처음인 저는 너무나 당황했지만 (메모리 상 문제라고 뜨는데, 메모리 상 문제면 메모리 할당과 제거에서 제거 된 무언가를 불러온 경우)라 생각이 들었는데, 아직 소스가 익숙치가 않아서 고민하며 찾아봤더니 NSZombieEnabled 라는 것이 있더군요. NSZombieEnabled는 정확하지 않게 나오는 Bad_Access 오류를 조금 더 구체적으로 보여줍니다. 이를 테면, OOO 변수가 제거 되었는데, 불러오려고 했다 라는 등의 ... 그렇다면 Xcode 4.2 에서 NSZombieEnabled 를 사용하려면 Edit Scheme 에서 Run App이름 으로 되어 있는 부분에 Environment Varibales 에 위 그림과 ..
[iOS프로그래밍] Appdelegate
iOS프로그래밍 시리즈가 포스팅 순서가 두서없이 진행이 되고 있습니다. 실무를 하면서 공부하며 모르거나 개념이 확실치 않은 부분에 대해서 포스팅을 하는 거라 조금은 헷갈리실 수 있겠지만, 따로 순서가 있는 것이 아니니 필요한 부분만 발췌해서 혹시나 공부하시는 분들께 도움이 되었으면 합니다. Appdelegate Project 생성 후 생기는 파일들 중 appdelegate라는 것을 보셨을 겁니다. 이 Appdelegate가 뭘까?라는 부분에 대해서 포스팅을 진행하겠습니다. 어플리케이션 델리게이트는 다른 객체를 대신해서 책임지고 어떠한 일을 해주는 클래스 를 의미합니다. 전처리가 일어날 때 UIApplication클래스 대신하여 무언가를 할 수 있도록 해줍니다. 모든 cocoa 프로그램은 UiApplica..
[iOS프로그래밍] ARC(Automatic Refrence Counting)
[http://blog.appgate.in/18 에서 퍼온 글입니다]어려우시면 간단하게 서적 참조해온 글 가장 하단 부분에 업데이트 했습니다. iOS5의 ARC(Automatic Reference Counting)은 Objective-C 객체의 메모리 관리를 자동으로 관리하는 "Compiler" 속성이다. 이 속성을 사용하면 예전에 쓰던 retain, release, autorelease, dealloc 코드는 사용할 수 없게되며 이들이 하던 역할을 컴파일 시점에 알아서 처리해준다. ARC가 허용하지 않는 코드를 사용하면 아래와 같은 에러를 뿜어낸다.그럼, ARC을 사용하게 되면 기존 오픈소스를 사용하는데 문제가 되지 않을까 걱정을 할 수 있는데 다음과 같이 해결하면 된다.이미 컴파일된 오픈소스 라이브러..
[iOS프로그래밍] NSArray와 NSString (문장 잘라내기)
NSArray는 많이 쓰이는 클래스이기도 하며, 현재 제작중인 "전생에 우리는" 아이폰 버전에서는, 배열안의 문장들을 나열하고 그 문장 중 랜덤으로 임의의 문장을 뽑아 문장 안에 사용자가 (EditText에 쓴) 문자를 받아와서 문장안에 넣어야 합니다. 이를테면, " 120년 전 |님과 |님은 친구였습니다" 라는 배열안의 문장을 뽑아온다면, |에 사용자가 넣어놓은 변수를 받아와서 저 부분에 넣어야 하는 문제에 부딪쳤습니다. 먼저 이럴 때 사용되는 클래스는 NSArray 와 NSString 입니다. 이론적으로 |을 찾아내서 |을 기준으로 5부분 (120년전 , | , 님과 , | , 님은 친구였습니다)라고 나눈 뒤에 두번째와 네번째에 다른 변수를 넣을 예정입니다. ( 변수자체를 넣는 방법도 있다고 하는데...
[iOS프로그래밍] Objective-C와 JAVA
저의 경우에는 기존에 안드로이드를 개발했기 떄문에, Objective-c를 개발하면서 몇가지가 꽤 익숙치 않고 어색하긴 합니다만, 분명히 편리하고 효율적인 측면이 있는 건 분명하다는 생각이 듭니다. 코코아는 Objective-C를 이용 해 개발을 했고, 대부분이 Objective-C를 이용해 개발이 가능합니다. 먼저 인스턴트를 생성하는 방법입니다. 기존에 만들어져 있는 클래스들을 사용해서 제작을 하게 되는데, 예를 들어 배열을 만들게 되면, NSArray *testarray; 라고 생성을 하게 됩니다. 기존의 자바와는 달리 *라는 포인터를 만들어주게 되고, NSArray는 (NextStep)의 줄임말은 NSArray라는 기존의 있는 배열 클래스를 사용해서 만들게 됩니다. 물론 이미 만들어져 있는 클래스인..
[iOS프로그래밍] UIWebview로 url을 띄워보기
[iOS프로그래밍] UIWebview로 url을 띄워보기오오, 오늘 아시는 분과 함꼐 스터디를 하면서 많은 부분을 깨우쳤네요. 자바에 아직도 생각이 묶여있어, X Code 환경이 매우 잘되어 있어 깜짝 놀라면서도, 아직은 익숙치가 않아 적응하려고 열심히 하고 있습니다. 안드로이드용 "전생에 우리는"을 아이폰용으로 제작중이며, 그에 관련해서 여러가지 부분들을 부분적으로 포스팅하려고 생각중입니다. 꽤나 매력있는 언어임은 틀림없네요 ^^ 푹빠져서 공부중입니다~! 이번 포스팅은 UIWebview 를 통해 URL 을 불러오는 부분입니다. 참고 URL은 http://conecode.com/news/2011/05/ios-tutorial-creating-a-web-view-uiwebview/ 이며, 10. Add th..