공부방/iOS2019. 10. 29. 12:42iOS WKWebView dynamic height (iOS WKWebView 동적 높이)

WKWebView height 를 가져와서 TableView Item의 height를 동적으로 변경 하고 싶다면, 아래의 코드를 사용하면 된다. var webViewHeight: CGFloat = 40 func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) { webView.evaluateJavaScript("document.readyState", completionHandler: { (complete, error) in if complete != nil { webView.evaluateJavaScript("document.body.scrollHeight", completionHandler: { (height, error) in s..

공부방/iOS2019. 10. 21. 15:10Xcode 11 Fastlane iTMSTransporter testFlight upload error (Xcode 11 Fastlane testFlight 업로드 에러 해결 방법)

XCode 11로 업데이트 후 Fastlane로 빌드를 시켜놓으면, 마지막에 testFlight 업로드 시 iTMSTransporter에서 아래와 같은 Error 를 출력한다. -Djava.ext.dirs=/usr/local/itms/java/lib/ext is not supported. Use -classpath instead iTMSTransporter 2.0.0으로 업데이트를 한 상태인데도 이러길래, 구글링에 들어갔다. 역시나 특별한 해결 방법이 보이지 않는 가운데, 우연히 이전 버전을 다시 itms 폴더에 덮어 씌우면 된다는 힌트를 발견했다. 참고 : https://github.com/fastlane/fastlane/issues/15323 친절하게도 다운로드 할수있게 공유도 해주 었다. 이전 버전..

XCode certificate file remove (XCode cerificate 파일 제거)
공부방/iOS2019. 10. 21. 14:14XCode certificate file remove (XCode cerificate 파일 제거)

XCode 에서 testFlight 업로드중 실수로 Destibution Certificate File 을 생성해 버렸다. 이럴때는 Finder -> 응용프로그램 -> 유틸리티 -> 키체인접근 그림 1에서 처럼 인증서 항목을 클릭하고, 최신 생성된 인증서를 제거해 주면 된다.

공부방/iOS2019. 10. 17. 17:03iOS 13 NSInternalInconsistencyException statusBar

iOS 13 업데이트 이후 Error 가 뿜어져 나온다 ... 또하나 찾은 Error 내용은 아래와 같다. Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'App called -statusBar or -statusBarWindow on UIApplication: this code must be changed as there's no longer a status bar or status bar window. Use the statusBarManager object on the window scene instead.' 이전 처럼 UIApplication 에서 status bar 를 가져 올수 없다. 이..

How to block iOS  dark mode (iOS dark mode 막는 방법, 기존 버전 사용 방법 )
공부방/iOS2019. 10. 17. 14:57How to block iOS dark mode (iOS dark mode 막는 방법, 기존 버전 사용 방법 )

iOS 13 버전 이상부터 Dark Mode 기능을 사용할 수가 있다. 사용자가 테마를 바꿀경우 앱도 자동으로 다크 테마로 변경이 되는데, 문제는 이에대해 따로 적용을 안 해 놓으면 배경색을 따로 지정을 안했을 경우 전부 검정색으로 변하게 된다. 앱 자체 테마가 Light Dark 둘 다 콘셉트에 맞으면 좋은 디자인 이겠지만, 오래된 앱들은 대부분 Dark 테마는 고려를 하지 않은 디자인이 대부분일 것이다. 따라서 임시 방편으로 디자인을 개선할 때까지 다크 테마를 막는 방법을 알아보자! 방법은 너무나도 쉽다. Info.plist 파일에 key : User Interface Style value : Light 로 설정을 해주면 된다. 이는 반대로 하면 무조건 다크 테마가 적용이 가능하다는 뜻도 되겠다.

iOS 13 dismiss call black screen error(iOS 13 dismiss 호출시 블랙 스크린 오류 )
공부방/iOS2019. 10. 16. 18:16iOS 13 dismiss call black screen error(iOS 13 dismiss 호출시 블랙 스크린 오류 )

iOS 13 Version Simulator에서 테스트 중 이상한 현상을 발견했다. 바로 아래와 같은 코드를 호출하면 self.dismiss(animated: true) 화면이 검정색으로 바뀌면서 먹통이 돼버리는 것이다. 메시지는 아래와 같이 뜨는데 이게 해당 현상과 관련이 있는지는 잘 모르겠다. ProcessAssertion::processAssertionWasInvalidated() 그래서 self.dismiss(animated: false) 로 변경해주니 해당 현상을 해결이 되었다. 이제 기존 애니메이션 처리를 어떻게 처리해야 될지 찾아봐야겠다...

공부방/iOS2019. 10. 16. 18:05iOS 13 UISearchBar _cancelButtonText Error

iOS 13 에서 uiSearchBar.setValue("cancel".localized, forKey: "_cancelButtonText") 부분에서 Terminating app due to uncaught exception 'NSGenericException', reason: 'Access to UISearchBar's set_cancelButtonText: ivar is prohibited. This is an application bug' 위와 같은 에러 코드가 뿜어져 나오면서 앱이 죽어버렸다. 다른 iPhone 들에서는 멀쩡하게 작동 하던 코드가 왜 작동이 안될까 하며 찾아 보던때에 우연히 힌트를 발견했다. https://stackoverflow.com/a/29232231/11852339 이사람..

공부방/iOS2019. 10. 14. 17:24XCode 11.1 update Crash RealmSwift

XCode 11.1 업데이트 이후 갑자기 RealmSwift 에서 아래와 같은 메시지를 출력후 앱이 죽었다. Terminating app due to uncaught exception 'RLMException', reason: 'Primary key property ...... 찾아보니 RealmSwift를 업데이트 해주면 괜찮다고 한다. Podfile 의 pod 'RealmSwift', '3.18.0' 로 버전을 업데이트 해준다. 만약 해당 버전을 못 찾는다면 pod repo update 를 입력후 pod install 이나 pod update 를 해주면 된다. 참고 : https://github.com/realm/realm-cocoa/issues/6250

iOS fixed header and horizontal UIScrollView in UICollectionView (iOS 가로 스크롤 뷰가 포함 된 CollectionView)
공부방/iOS2019. 10. 10. 18:00iOS fixed header and horizontal UIScrollView in UICollectionView (iOS 가로 스크롤 뷰가 포함 된 CollectionView)

Android 도 같은 프로젝트를 만들었는데, iOS 도 비슷하게 만들면 어떨가 해서 만들어 보았다. 테이블 레이아웃처럼 사용 가능하면서 동시에 recycle 되기 때문에 갯수에 상관없이 성능상 큰 지장 없이 사용 가능 하다. 누군가에게 도움이 되길 바란다. Full Source Code : https://github.com/JeonGuKang/iOS-Fixed-Header-Horizontal-Scroll

How to get dSYM file for release (상용 dSYM 파일 가져오는 방법)
공부방/iOS2019. 9. 30. 14:10How to get dSYM file for release (상용 dSYM 파일 가져오는 방법)

iOS에서 Fabric Crashlytics 를 이용하기 위해서는 dSYM 파일이 필요한데, 찾는 방법은 간단하다. 먼저 https://appstoreconnect.apple.com 에 나의 앱에 들어간후 활동 내역 탭 -> 모든 빌드 -> dSYM 다운로드를 클릭하여 dSYM zip 파일을 받아. Fabric 에 그대로 첨부해 준다.

image