Background Threads, Queues
·
SwiftUI
Background Thread를 사용해야 하는 이유작업을 할 때 무거운 작업을 하는 경우 CPU를 많이 사용하기 됩니다. 다음은 현재 사용중인 CPU 사용률을 확인하는 방법입니다.아래에서 첫 번째 Thread인 Thread 1은 메인 스레드이며 대부분의 코드들이 기본적으로 메인 스레드인 Thread 1에서 작업이 됩니다. Thread 1 즉 메인 스레드에서 작업을 가볍게 하는 경우는 상관 없지만 만약 무거운 작업을 하게 되어 Thread 1 메인 스레드가 포화 상태가 된다면 다른 작업들은 할 수 없게 되며 이게 굉장히 안좋은게 UI 변화 같은 경우도 메인 스레드에서 작업을 하기 때문에 화면이 버벅인다거나 멈출 수 있기 때문입니다. 하지만 CPU는 메인 스레드 외에도 여러개의 스레드를 만들어 낼 수 있습..
swipeActions
·
SwiftUI
swipeActions는 리스트에서 행을 옆으로 밀었을 때 액션을 커스텀화하는 것 입니다 List는 기존에 onDelete를 사용하여 리스트에서 행을 삭제하는 기능을 제공하였습니다. 하지만 삭제 외에 추가적인 작업을 하고 싶을 때 swipeActions를 사용하여 커스텀 동작을 추가해줍니다.파라미터edge:  어느 방향으로 스와이프 될 것인지를 결정합니다. 왼쪽은 .leading, 오른쪽은 .trailing 입니다. allowsFullSwipe: 말 그대로 완전히 스와이프하여 화면 끝까지 넘길 수 있는지 여부입니다. 기본값은 true 입니다.: 만약 사용자가 스와이프하여 화면 끝까지 넘기게 된다면 실행중인 스와이프가 취소되어 다시 원점으로 돌아갑니다.: 이때 스와이프 콘텐츠에 여러개가 있다면 해당 콘텐츠..
Tab View, badge
·
SwiftUI
탭을 할 수 있는 UI 를 만들기 위해서는 TabView에 뷰를 배치하고 각 탭의 내용에 tabItem(_:) modifier 를 적용합니다. iOS 에서는 badge modifier 같은 badge(_:) 를 사용하여 각 탭에 badge 를 할당할수도 있습니다. 다음 예제는 세 개의 탭이 있는 탭 보기를 생성하며, 각각은 사용자 지정 자식 보기를 제공합니다. 첫 번째 탭에는 숫자 배지가 있고 세 번째 탭에는 문자열 badge가 있습니다.TabView { ReceivedView() .badge(2) .tabItem { Label("Received", systemImage: "tray.and.arrow.down.fill") } SentVi..
Modal View (sheet)
·
SwiftUI
Modal 는 상호 작용을 제공하는 별도의 보기로 콘텐츠를 표시하는 뷰 입니다. 가장 대표적인 Modal 를 사용하는 방법은 다음과 같습니다. 아래 메서드들의 공통점은 특정 값을 지정하여 해당 값이 변했을 경우 Modal이 나타나게 합니다.func sheet(isPresented: Binding, onDismiss: Closure, content: Closure)Presents a sheet when a binding to a Boolean value that you provide is true.func sheet(item: Binding, onDismiss: Closure, content: Closure) Presents a sheet using the given item as a data source..
ytw_developer
'SWIFT' 태그의 글 목록 (2 Page)