HealthKit (13)
Accessibility(손쉬운사용) 사용하기 VoiceOver Tutorial Accessibility & Inclusion Design an effective chart New iOS18 feature VoiceOver rotor 참고 링크를 한번 확인해보자/ ChartContainer var titleView: some Vi...
Accessibility(손쉬운사용) 사용하기 VoiceOver Tutorial Accessibility & Inclusion Design an effective chart New iOS18 feature VoiceOver rotor 참고 링크를 한번 확인해보자/ ChartContainer var titleView: some Vi...
Optimizing 1. sheet to fullScreenCover 이부분은 예전글에 여러 수강생의 의견이라는 섹션으로 작성을 했던 부분이다. 그래서 크게 언급은 하지 않는걸로 하겠다. fullScreenCover를 사용한다면 primingView에서 .interactiveDismissDisabled() 이부분은 지워주자. 2. DataLi...
코드 리팩토링 이어서 진행을 하도록 한다. ChartContainer config 객체 도입 struct ChartContainer<Content: View>: View { let title: String let symbol: String let subtitle: String let context: Heal...
코드 리팩토링 여태까지 만든 코드를 리팩토링을 하는 과정을 해보려한다. refactoring은 소프트웨어 공학에서 ‘결과의 변경 없이 코드의 구조를 재조정함’을 뜻한다. 주로 가독성을 높이고 유지보수를 편하게 한다. 버그를 없애거나 새로운 기능을 추가하는 행위는 아니다. 사용자가 보는 외부 화면은 그대로 두면서 내부 논리나 구조를 바꾸고 개선...
Chart Drag시 Haptic 기능 추가. 차트를 드래그할때 Haptic 기능을 제공하여 기기와 접촉할 때 촉감을 자극해 실제로 뭔가를 만지고 있다는 느낌을 전달하려 한다. sensoryFeedback Modifier를 사용한다. Step Chart View에서 적용을 해보자. @State private var selectedDay: Dat...
HealthData 추가하기 지금까지는 처음에 addSimulator라는 함수를 사용해서 임의의 데이터를 추가해서 그 데이터를 기반으로 View나 기능을 구현했다면 이제는 유져가 직접 값을 추가하게 만들어 본다. 이전에 만들어둔 HealthDataListView를 조금 더 보완한다. @Environment(HealthKitManager.self...
Weight Average Chart 이번에도 이전 Pie Chart와 유사하게 진행을 한다. 하지만 BarChart로 한다. 일별 몸무게 변화량 계산 함수 만들기 struct ChartMath { // 생략 static func averageDailyWeightDiffs(for weights: [HealthMetric]) -&...
Weight Chart MockData 분리 기존에 HealthMetric 구조체에 같이 있던것을 별도의 구조체를 만들어 MockData를 관리한다. struct MockData { static var steps: [HealthMetric] { var array: [HealthMetric] = [] ...
ChartView 분리 현재 DashBoardView의 View를 구성하는 코드가 길어지기에 분리를 해준다. 기존에 DashBoardView에 있던, rawSelectedDate, averageStepCount, selectedHealthMetric을 옮겨준다. 그리고 새롭게 var selectedStat: HealthMetricContext ...
Charts 사용하기. MockData를 생성하고, 그걸 fetch하는 것 까지 했으니, 이젠 Dashboard에 Charts를 사용하여 도식화를 해보도록 한다. WWDC2022 Charts Docs 모델링 fetch해서 가져온 데이터들을 객체로 담아서 Chart에 전달하기위해 모델링을 해준다. struct HealthMetric: Id...