본문 바로가기

전체 글

(149)
iOS에서 NWPathMonitor를 통한 네트워크 검색 iOS 12 이전에는 Reachability 클래스를 통하여 iOS 내에서 인터넷 상태를 체크했었습니다. https://developer.apple.com/library/archive/samplecode/Reachability/Introduction/Intro.html Reachability Reachability Last Revision:Build Requirements:iOS SDK 8.0 or laterRuntime Requirements:iOS 8.0 or later Important: This document is no longer being updated. For the latest information about Apple SDKs, visit the documentation website...
Building an Interactive Tutorial 튜토리얼 제작 방법 소개 https://developer.apple.com/documentation/docc/building-an-interactive-tutorial?fbclid=IwAR3eOC7gimF4SZ8P734_kI8O1IQNJKHHAEpypdPKHCsWRu8HBKEybrHlu1w Apple Developer Documentation developer.apple.com
아이패드 Split View 설정 아이패드에서 멀티태스킹 기능 중 하나인 SplitView를 많이들 활용하고 있는데요 아이패드 앱 개발 시 이를 활성화 해줘야 내 앱이 SplitView 기능을 동작할 수 있습니다. 애플에서 소개하는 아이패드 멀티태스킹 설명입니다. https://support.apple.com/ko-kr/HT207582 iPad에서 멀티태스킹 사용하기 iPadOS에서는 멀티태스킹을 사용하여 동시에 두 개의 앱으로 작업하고, 비디오를 시청하면서 이메일에 답장하고, 제스처를 사용하여 앱을 전환하는 등 다양한 작업을 수행할 수 있습니다. support.apple.com 앱에서 설정 방법 Info.plist에서 UIRequiresFullScreen 기능을 꺼주시면 됩니다. UIRequiresFullScreen 설정 한 뒤 앱을 ..
Objective-C에서 Swift파일을 Import하는 방법 Objective-C에서 Swift파일을 Import하는 방법에 대한 설명입니다. developer.apple.com/documentation/swift/imported_c_and_objective-c_apis/importing_swift_into_objective-c Apple Developer Documentation developer.apple.com
Xcode12 Universal Framework 제작방법 프로젝트에서 Framework 제작 방법에 대한 소개 XCFramework / Fat Framework 1. 프로젝트 실행 2. XCFramework 제작용 스크립트를 위한 Aggregate 생성 3.Target 이름 생성 4.New Run Script Phase 클릭 5. 스크립트 작성 1) XCFramework용 # Build Device and Simulator versions xcodebuild archive -scheme "${PROJECT_NAME}" -archivePath "${BUILD_DIR}/iphoneos.xcarchive" -sdk iphoneos SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES xcodebuild archive -schem..
ObjC Framework import 시 'Failed to build module'로 인해 import할 수 없는 경우 ObjC로 이루어진 framework를 import시 위와 같은 에러를 만났을 가능성이 있는데요 Failed to build module '' from its module interface; it may have been damaged or it may have triggered a bug in the Swift compiler when it was produced ObjC로 이루어진 framework를 import시 위와 같은 에러가 발생했을 때 확인 및 수정 방법입니다. Framework에서 헤더파일 확인 public header를 import 시 헤더앞에 Framework 이름을 기록하지 않아 발생한 문제로 Framework자체는 빌드가 되지만, 이를 사용하는 프로젝트에서는 module이 헤더를 인..
Swift 메뉴 화면 제작 아래 영상 처럼 제스쳐 및 버튼을 이용해서 메뉴 화면을 열고 닫는 방법에 대한 소개로, UIViewController에 종속된 UIView 기반의 메뉴 화면 입니다. 프로젝트 생성 메뉴화면을 구성할 프로젝트를 생성합니다. (여기서는 SwiftMenuView라는 이름으로 생성 하였습니다.) MenuView 생성 메뉴 화면으로 쓰일 UIView(MenuView.swift)를 생성합니다. // // MenuView.swift // SwiftMenuView // // Created by magicmon on 2020/03/10. // Copyright © 2020 magicmon. All rights reserved. // import UIKit class MenuView: UIView { required in..
Swift 코드상에서 deinit호출 여부 체크하기 코드상에서 UIViewController 벗어날 때 retain cycle 해지가 되지 않아 메모리에 상주해 있는 경우가 있습니다. 처음 UIViewController를 만들고 작업 했을 때는 생기지 않았지만, 그 이후에 추가기능을 넣고 빼는 과정에서 특정 객체 참조가 해지 되지 않거나, self 참조 등으로 retain cycle이 다 해지가 되지 않는 경우 이 UIViewController는 계속 메모리에 남아 있는데요 Instruments가 아닌 코드상으로 체크 할 수 있는 방법입니다. UIViewController있는 아래 두 property를 검사 할텐데요 isBeingDismissed: UIViewController가 dismiss될 때, 해당 값은 true입니다. isMovingFromPar..