SwiftUI
-
SwiftUI LongPressGesture 를 사용한 Fingerprint ButtonSwiftUI 2020. 8. 25. 05:27
struct FingerprintButton: View { //롱프레스 제스처 상태 @GestureState var press = false //롱프레스 제스쳐 완료 상태 체크 @State var completed = false var body: some View { //3개의 이미지 와 원형 상태바 레이어용 ZStack ZStack { //1. 기본 배경 - 완료시 사라짐 Image("fingerprint1") .opacity(completed ? 0 : 1) .scaleEffect(completed ? 0 : 1) //2. 진행 중에 위로 이동하면서 애니메이션 Image("fingerprint2") .clipShape( Circle() .offset(y: press ? 0 : 50) ) .animat..
-
SwiftUI를 이용해 Circle Progress Bar 그리기SwiftUI 2020. 8. 25. 03:15
import SwiftUI struct RoundProgressView : View { var width: CGFloat var height: CGFloat var color1: Color var color2: Color @Binding var percent: Int; var body: some View { // width의 비율에 따라 선의 두께를 지정하기 위해 multiplier 설정 let multiplier = width / 40 //트림하고 남은 영역이 진행 상태를 나타내는 부분으로 이를 역으로 계산 //에를 들어 0.1 에서 1.0 까지 트림하는 경우 원의 10% 부분이 잘리고 남아있는 부분은 90%가 됨 let progress = 1 - (CGFloat(percent) / 100) retur..