diff --git a/heatguard-iOS/Assets.xcassets/WeatherCloudy.imageset/weather-cloudy.png b/heatguard-iOS/Assets.xcassets/WeatherCloudy.imageset/weather-cloudy.png index 0d93a07..d0d1ef0 100644 Binary files a/heatguard-iOS/Assets.xcassets/WeatherCloudy.imageset/weather-cloudy.png and b/heatguard-iOS/Assets.xcassets/WeatherCloudy.imageset/weather-cloudy.png differ diff --git a/heatguard-iOS/Assets.xcassets/WeatherRain.imageset/weather-rain.png b/heatguard-iOS/Assets.xcassets/WeatherRain.imageset/weather-rain.png index ab9fb54..28fd37c 100644 Binary files a/heatguard-iOS/Assets.xcassets/WeatherRain.imageset/weather-rain.png and b/heatguard-iOS/Assets.xcassets/WeatherRain.imageset/weather-rain.png differ diff --git a/heatguard-iOS/Assets.xcassets/WeatherSunny.imageset/weather-sunny.png b/heatguard-iOS/Assets.xcassets/WeatherSunny.imageset/weather-sunny.png index 955406b..92186f2 100644 Binary files a/heatguard-iOS/Assets.xcassets/WeatherSunny.imageset/weather-sunny.png and b/heatguard-iOS/Assets.xcassets/WeatherSunny.imageset/weather-sunny.png differ diff --git a/heatguard-iOS/Presentation/Features/SiteLinking/TeamMembershipFlowView.swift b/heatguard-iOS/Presentation/Features/SiteLinking/TeamMembershipFlowView.swift index a8a9b8f..109a6bf 100644 --- a/heatguard-iOS/Presentation/Features/SiteLinking/TeamMembershipFlowView.swift +++ b/heatguard-iOS/Presentation/Features/SiteLinking/TeamMembershipFlowView.swift @@ -80,7 +80,7 @@ struct TeamMembershipFlowView: View { private var invitationConfirmation: some View { VStack(spacing: 0) { - flowHeader(title: "현장 연동", backgroundColor: HGColor.appBackground, height: 54, topInset: 10) + flowHeader(title: "현장 연동") Spacer(minLength: 24) @@ -157,7 +157,6 @@ struct TeamMembershipFlowView: View { } .dismissKeyboardOnBackgroundTap() .background(HGColor.appBackground.ignoresSafeArea()) - .toolbar(.hidden, for: .navigationBar) } @ViewBuilder @@ -505,7 +504,7 @@ struct TeamMembershipFlowView: View { private var membershipList: some View { VStack(spacing: 0) { - flowHeader(title: "내 현장 목록", backgroundColor: HGColor.appBackground, height: 54, topInset: 10) + flowHeader(title: "내 현장 목록") if memberships.isEmpty { ContentUnavailableView( "초대받은 현장이 없어요", @@ -582,30 +581,28 @@ struct TeamMembershipFlowView: View { private func flowHeader( title: String, - backgroundColor: Color = HGColor.surface, - height: CGFloat = 48, - topInset: CGFloat = 0, onBack: (() -> Void)? = nil ) -> some View { - ZStack { - Text(title) - .font(HGFont.semiBold(18, relativeTo: .headline)) - .foregroundStyle(HGColor.primaryText) - HStack { - Button(action: onBack ?? onClose) { - Image(systemName: "chevron.left") - .font(.system(size: 17, weight: .semibold)) + Color.clear + .frame(height: 0) + .navigationTitle(title) + .navigationBarTitleDisplayMode(.inline) + .toolbar(.visible, for: .navigationBar) + .toolbarBackground(HGColor.appBackground, for: .navigationBar) + .toolbarBackground(.visible, for: .navigationBar) + .toolbar { + ToolbarItem(placement: .principal) { + Text(title) + .font(HGFont.semiBold(18, relativeTo: .headline)) .foregroundStyle(HGColor.primaryText) - .frame(width: 44, height: 44) } - .accessibilityLabel("뒤로") - Spacer() + ToolbarItem(placement: .navigationBarLeading) { + Button(action: onBack ?? onClose) { + Image(systemName: "chevron.backward") + } + .accessibilityLabel("뒤로") + } } - } - .frame(height: height) - .padding(.horizontal, 14) - .padding(.top, topInset) - .background(backgroundColor) } @MainActor