IOS 5

Xcode 실행시 앱이 자동으로 런치되는 것 막기

개발을 하다보면 실행하고 앱이 런치되면 이후에 디버깅을 하게 된다. 하지만 앱이 죽어있는 상태에서 실행되는 순간의 디버깅이 필요한 경우가 있는데, 이를 위해 Xcode 에서는 실행 스킴에 앱을 바로 런치하지 않고 기다려주는 옵션을 제공하고 있다. Product > Scheme > Edit scheme...Run 설정 중에Info 탭의 Launch 에 Wait for executable to be launched 유니버셜 링크를 통해 런치되는 경우의 AppDelegate 의 application:didFinishLaunchingWithOptions: 에 전달되는 launchOptions 값을 확인하는데 유용하게 사용했다.

iOS & Android 2016.10.28

네비게이션바의 백버튼 다루기

iOS에서 네비게이션바의 백버튼을 요리하는 방법에 대해서는 많은 글들이 있는데, 내가 필요한건 현재 화면의 스크롤 상태에 따라 백버튼을 달리 표시해야하는 것이었다. 먼저 백버튼을 요리하는건 애플 개발자 사이트에 샘플로 있는 코드에서도 확인할 수 있다. 백버튼의 텍스트는 숨기고 백버튼의 배경 이미지를 넣어서 처리하는 것인데 다음 코드를 보면 알 수 있겠다. 참고: https://developer.apple.com/library/prerelease/ios/samplecode/NavBar/Introduction/Intro.html // Note that images configured as the back bar button's background do // not have the current tintCol..

iOS & Android 2015.09.23

UIViewController initWithNibName, viewDidLoad 호출 순서!?

UIViewController의 initWithNibName에서 초기값을 설정하고, setSomthing() 류의 함수를 외부로 노출하여 실제 화면에 보여지기 전에 something 값을 얻어서 화면에 반영하려고 했다. 즉, 기대하는 호출 순서는 initWithNibName -> setSomething -> viewDidLoad 가 되겠다. 하지만 실제로는 initWithNibName -> viewDidLoad -> setSomething 으로 불려지더라... -_-; initWithNibName 안에 다음과 같은 코드가 있었는데, 크기를 구하는 것 때문에 initWithNibName 처리 중에 viewDidLoad를 호출해버리는 것 같다. 레이아웃이 이루어진 다음에 구할 수 있는 값은 viewDidLo..

iOS & Android 2013.01.14

Compilation failed for data model at path

Core Data를 사용해서 iOS 앱 개발 중인데, 종종 빌드 과정에 에러가 발생한다. 아무래도 이 현상이 Mac OS를 Mountain Lion으로 업데이트하고, Xcode를 4.4.1로 업데이트하면서 생긴 것 같다. 결론은 "Xcode를 지우고 새로 설치해서 해결"solution: Reinstall Xcode 다음 내용은 추측 (해결하고나니 이전 상태를 볼 수가 없어서...) 터미널에서 빌드를 해보니 메세지가 떨어지는데, 결국 에러는 dyld: Symbol not found: _OBJC_CLASS_$_NSAttributeDescription 이거다. /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Develo..

iOS & Android 2012.08.17