diff --git a/Projects/Core/Sources/Utility/UI/PinchZoom/PinchZoomView.swift b/Projects/Core/Sources/Utility/UI/PinchZoom/PinchZoomView.swift index b6ca7066..2a54589a 100644 --- a/Projects/Core/Sources/Utility/UI/PinchZoom/PinchZoomView.swift +++ b/Projects/Core/Sources/Utility/UI/PinchZoom/PinchZoomView.swift @@ -85,8 +85,8 @@ class PinchZoomView: UIView { isPinching = false scale = scale.between(min: 0.5, max: 2.0) lastScale = scale -// anchor = .center -// offset = .zero + anchor = .center + offset = .zero default: break } diff --git a/Projects/Core/Sources/Utility/UI/PinchZoom/PinchZoomViewModifier.swift b/Projects/Core/Sources/Utility/UI/PinchZoom/PinchZoomViewModifier.swift index cf3c0a1a..0f592193 100644 --- a/Projects/Core/Sources/Utility/UI/PinchZoom/PinchZoomViewModifier.swift +++ b/Projects/Core/Sources/Utility/UI/PinchZoom/PinchZoomViewModifier.swift @@ -20,14 +20,14 @@ public extension View { struct PinchToZoomViewModifier: ViewModifier { @State var scale: CGFloat = 1.0 - @State var anchor: UnitPoint = .center + @State var anchor: UnitPoint = .zero @State var offset: CGSize = .zero @State var isPinching: Bool = false func body(content: Content) -> some View { content // .scaleEffect(scale, anchor: anchor) - .scaleEffect(scale) + .scaleEffect(scale) // Prevent glitching .offset(offset) .overlay( PinchZoomViewRepresentable( diff --git a/Projects/Features/Sources/MyPage/CirclePackView/CircleView/CirclePackView.swift b/Projects/Features/Sources/MyPage/CirclePackView/CircleView/CirclePackView.swift index f8804834..04c7e234 100644 --- a/Projects/Features/Sources/MyPage/CirclePackView/CircleView/CirclePackView.swift +++ b/Projects/Features/Sources/MyPage/CirclePackView/CircleView/CirclePackView.swift @@ -115,25 +115,27 @@ public struct CirclePackView: View { // 전체 스크롤, 원상복구되는 줌 들어가 있음 ScrollView([.horizontal, .vertical], showsIndicators: false) { ZStack { - ForEach(circleData) { data in - if data == focusedCircleData { - Circle().fill(.clear) - } else { - SubCircleView( - namespace: namespace, - outboundLength: option.outboundLength, - circleData: data, - onTapGesture: { - guard animationEnded else { return } - option.onCircleTappedHandler(data) - focusedCircleData = data - }) + ZStack { + ForEach(circleData) { data in + if data == focusedCircleData { + Circle().fill(.clear) + } else { + SubCircleView( + namespace: namespace, + outboundLength: option.outboundLength, + circleData: data, + onTapGesture: { + guard animationEnded else { return } + option.onCircleTappedHandler(data) + focusedCircleData = data + }) + } } } + .frame(width: option.outboundLength, height: option.outboundLength) + .padding(option.framePadding) + .scaleEffect(scale) } - .frame(width: option.outboundLength, height: option.outboundLength) - .scaleEffect(option.scale) - .padding(option.framePadding) .pinchZooming() } .zIndex(1) diff --git a/Projects/Features/Sources/MyPage/MyPageView+.swift b/Projects/Features/Sources/MyPage/MyPageView+.swift index f12e387a..96c4a0f3 100644 --- a/Projects/Features/Sources/MyPage/MyPageView+.swift +++ b/Projects/Features/Sources/MyPage/MyPageView+.swift @@ -66,7 +66,6 @@ extension MyPageView { nickname: viewStore.nickname) .allowsHitTesting(false) - HStack { Image(systemName: "arrow.clockwise") .foregroundColor(.white)