일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Swift#flatMap#map#Monad#함수형 프로그래밍#Optional
- Multiple Window #iPad
- 거의최단경로 #5719번반례 # 백준반례 #백준플4 #플레4
- deinitialize #스위프트 #Swift #ARC #메모리 #memory #closure #클로저 #클로저 메모리 #weak #weak self #self #unowned self #memoryleak #메모리릭
- Compression resistance
- swift concurrency #swift #concurrency #async #async let #swift parallel #병렬실행 #동시실행 #이미지 동시 다운로드 #iOS #UIKit
- OS #Page #Page Table #Virtual Memory
- Swift Concurrency #동시성 프로그래밍 #async #await #async let #group Task #병렬 실행 #동시 다운로드
- notification #
- AR #Augmented Reality
- UIKit기본
- UI그리기
- Apple # HIG #iOS15 #iOS14 #Human #Interface #Guidelines #Apple developer # Apple human interface guidelines
- async #await #swift Concurrency #concurrency #actor #concurreny 원리 #concurreny 개념
- ARC #weak #unowned #Strong Reference #Strong Reference Cycle #순환참조 #Swift #메모리 #memoryLeak #메모리릭
- Autolayout #
- COW #Copy On Write #Swift #Optimization
- Multitasking #
- Multitasking #life Cycle
- #IntrinsicContentSize
- IntrinsicContentSize #UIKit #Swift #hugging priority #conflict resistance #Ambiguous
- ARC #Swift #Memory leak #weak self #unowned self #weak self 이유 #reference count #순환 참조 #retain cycle #delayed #deinitialization #지연 해제 #delayed deinitialization
- ARC #unowned #weak #weak unowned차이 #순환참조 #Strong Reference Cycle #Swift #메모리 #memoryLeak
- 백준#5719번#
- Swift #try #catch #Swift Concurrency 에러처리 #에러처리 #Error #Error Handling
- Hugging priority
- Swift #UIkit #ARC #Reference count #memory leak #memory #leak #애플 #iOS
- Autolayout 충돌
- 알고리즘
- Struct #Value Type #Value #Reference #Reference Type #Class #Structure #memory
- Today
- Total
도니의 iOS 프로그래밍 세상
Multiple Window on iPad 본문
iOS13이후로, iPad가 multiple window를 지원하기 시작했습니다. task manager에서도 보면 두 개의 사파리가 존재하는 등 기본적으로 애플이 제공하는 수
많은 앱들은 멀티태스킹 환경을 지원하고 있다. 통합버전이었던 아이폰과 아이폰 용 OS가 iOS와 iPad OS로 분리되었다. iPad 전용 OS와 macOS와의 중간인 Catalyst라는 것이 존재하게 되어, iPad 용으로 만들어서 Catalyst를 통해, 조건을 만족시킨다면 맥에서도 구동할 수 있게 되었다.
iPad에서 멀티윈도 작동시키기
아이패드 앱들은 콘텐츠를 제공하기 위해서 두 가지 타입의 윈도를 사용한다.
primary window는 모든 앱의 오브젝트에 대한 접근과, 그것들과 관련된 액션을 통해서 앱의 완전한 계층구조를 제시한다. 예를 들어, 메일은 메일박스와 메시지 리스트를 보여주기 위해서 primary window를 사용한다.
auxiliary window는 종종 모달을 사용해서 앱의 구체적인 작업이나 영역을 보여준다.
iPadOS 15나 후엔, 너는 사용자가 앱을 열 때, 각각의 윈도의 처음 나타나는 화면 스타일을 결정할 수 있게 된다. 사용자가 앱을 열고난 뒤, 윈도를 재조정하게 될 때 구체화된 게시 스타일이 윈도의 작업이나 콘텐츠의 자연스러움을 강화시켜줄 것이다. iPadOS는 3가지 프레젠테이션 스타일을 정의하고 있다.
- Prominent: 모달 프레젠테이션은 윈도 창을 높이고 둘러싼 영역들은 낮추고 그것들과의 상호작용을 막는다.
- Standard: side-by-side(나란히 존재하는) 프레젠테이션은 각각의 동일한 레벨의 창들 각각에 존재하는 앱들의 완벽한 기능성을 지원해 줌으로써 상호작용을 가능하게 한다.
- Automatic: 앱이 윈도에 요청하는 맥락에 따라 시스템이 프레젠테이션을 선택한다.
결국 많은 경우에 primary window를 쓰더라도, 앱에 따라서 auxiliary window에서 특정한 기능을 보여줄 수 있기에 사람들이 발견할 수 있는 휴리스틱들을 제공해 주는 것이 좋다. auxiliary라고 하더라도 그 자체는 유용해야 하기에 툴들이나 옵션을 제공해야 한다. done button or close button으로 언제든지 그 윈도를 닫을 수 있도록 하는 게 좋다.(xcode 새 프로젝트 application scene 관리자가 이것과 연관되어 있음.)
현재 iOS15 페이지에서는 삭제된 내용이나 그럼에도 불구하고 유용하기 때문에 필기해두었다.
출처
Apple Human Interface Guidelines(https://developer.apple.com/design/human-interface-guidelines/)
'HIG(iOS14)' 카테고리의 다른 글
Notification (0) | 2022.02.16 |
---|---|
Multitasking life Cycle (0) | 2022.02.15 |
Multitasking의 세 가지 (0) | 2022.02.15 |
AR(Augmented Reality) (0) | 2022.02.15 |
Undo and Redo (0) | 2022.02.15 |