SWIFT

    iOS/Swift) UIKit 이란?

    iOS/Swift) UIKit 이란?

    iOS 앱을 만들고, User Interface를 구성하는 데 필수적인 프레임워크 이름은 무엇인가? UIKit 입니다. 가장 많이 사용하는 프레임워크, UIKit의 구체적인 역할에 대해 알아봅시다! Construct and manage a graphical, event-driven user interface for your iOS or tvOS app. (Swift 공식문서 참조) iOS앱 또는 tvOS앱에 과한 그래픽적인 부분, 이벤트 기반 UI를 구성하고 관리합니다. 이제 ARM을 장착한 맥북이 나오므로.. iPad, iPhone, MAC 에서 동시에 빌드가 되는 시대가 오겠죠? 그때의 역할에서의 UIKit이 어떨지도 생각해보면 좋을 것 같습니다. (다음의 포스팅 주제..? ㅎ) UIKit frame..

    시뮬레이터에서 할 수 없는 것과 실제 iPhone과의 차이

    먼저 시뮬레이터는 당연히 iPhone이 아니다. MacOS에서 구동되기 때문에 CPU, 메모리, 네트워크 연결을 포함한 컴퓨터 리소스에 액세스 할 수 있다. 이때문에 아이폰 보다 빠를 가능성이 높다. 그렇기 때문에 시뮬레이터는 앱의 성능, 메모리 사용량 및 네트워크 속도 등에 대해서 정확한 테스트가 아니다! 하드웨어 미지원 모션 지원 (가속도계 및 자이로 스코프)은 지원되지 않습니다. 오디오 및 비디오 입력 (카메라 및 마이크)은 지원되지 않습니다. 근접 센서 기압계 주변 광 센서 문서엔 없지만 당연하게도 안되는 것 페이스 아이디 센서 AR 관련 Test API 미지원 Apple 푸시 알림 받기 및 보내기 사진, 연락처, 캘린더 및 미리 알림에 액세스하기위한 개인 정보 보호 알림 UIBackgroundM..

    frame and bounds

    frame and bounds

    frame과 bounds에 관한 정보가 많기에, 간단하게 핵심을 요약하고 정리하겠습니다. 공식문서에서의 설명 frame : 수퍼 뷰의 좌표계에서 뷰의 위치와 크기를 설명하는 프레임 사각형입니다. bounds: 자체 좌표계에서 뷰의 위치와 크기를 설명하는 경계 사각형입니다. var bounds: CGRect { get set } var frame: CGRect { get set } // CGRect는 구조체 1단계 2단계로 나누어서 이해하면 편합니다. 1단계: 좌표 기준 bounds 부터 생각해보면, 어느 위치든 사각형의 view를 만들던 default bounds origin은 (0,0)입니다. (SuperView의 개념이 X) frame은 SuperView로부터 만들어직 사각형의 view의 위치가 고려..

    Scene delegate? + App Delegate

    Scene delegate? + App Delegate

    iOS 13부터는 SceneDelegate 등장으로 window 변수가 SceneDelegate로 이동 구조의 변화도 있음, SceneDelegate 설명 iOS 12 이하는 앱에 하나의 window를 가짐(multi window를 사용하지 않는다.) iOS 12 이하에서는 AppDelegate에 window: UIWindow? 변수가 있다. iOS 12 이하에서는 앱에 하나의 window를 가진다. (Multi window를 사용하지 않는다.) iOS 13 이상에서는 AppDelegate의 UILifecycle이 SceneDelegate로 이동 iOS 13 이상에서는 여러개의 window를 가질 수 있다 -> Multi window 사용 What is SceneDelegate? iOS 13이상 버전에서..