전체 글 (235) 썸네일형 리스트형 @Environment @Environment 는 SwiftUI 뷰가 자신을 둘러싼 환경으로부터 값을 읽어올 수 있게 해주는 프로퍼티 래퍼(Property Wrapper)이다.여기서 환경이란 앱의 시스템 설정(다크모드, 글자 크기 등)이나 상위 뷰에서 명시적으로 주입한 값을 의미한다. 가장 큰 특징은 데이터를 모든 뷰 계층을 통해 일일이 전달할 필요가 없다는 점이다. @Environment를 왜 사용할까?앱을 만들다 보면 특정 데이터를 여러 뷰에서 공유해야 할 때가 많은데 예를 들어, 최상위 뷰에서 설정한 테마 색상을 수많은 하위 뷰들이 모두 알아야 한다고 가정해보자@Environment 가 없다면, 부모 뷰에서 자식 뷰로, 또 그 자식 뷰에서 손자 뷰로... 데이터를 계속해서 전달해야 한다.이를 "프로퍼티 드릴링(Prope.. TodoApp - 1 ai의존도를 줄이는 연습을 하기 위해오롯이 혼자힘으로 앱을 만들어보려고하는중 투두앱 클론코딩 선택해서보는 중~ 일단 처음 프로젝트를 생성했을때SwiftData를 채택해서 생성하면 자동 생성해주는 코드부터 시작 //// Item.swift// Todo//// Created by 내꺼다 on 8/12/25.//import Foundationimport SwiftData@Modelfinal class Item { var timestamp: Date init(timestamp: Date) { self.timestamp = timestamp }}//// ContentView.swift// Todo//// Created by 내꺼다 on 8/12/25.//import .. ObservableObject - @Publised, @StateObject, @ObservedObject ObservableObject 는 SwiftUI와 함께 사용되는 Combine 프레임워크의 핵심 프로토콜 중 하나로단어 뜻 그대로 "관찰 가능한 객체(Object)"라는 의미를 가진다.protocol ObservableObject : AnyObject 주된 역할은 "나(객체)"의 데이터가 곧 변경될 거야!" 라고 외부에 미리 알려주는 것 이다.방송국 처럼 자신의 상태 변화를 구독하고 있는(관찰하는) 모든 View에게 변경 소식을 방송하는 역할을 한다. ObservableObject를 준수하는 인스턴스를 참조하기 위해서 @ObservableObject로 선언하여 참조한다. ObservableObject는 class 형태만 가능하고 struct가 아님을 주의하자 공식문서 코드 예시class Contact: .. HealthKit의 실시간 운동 기록 watchOS의 건강/피트니스앱 연동 과정에 있어, HKLiveWorkoutBuilder를 통한 실시간 데이터 수집에 관한 질문 -> 어떤 데이터들이 watch UI에서 갱신 되고, 관리 되는지를 더 공부,, 를 하겠다해서 정리 해 봄 HealthKit의 실시간 운동 기록을 위해선 세 가지가 함께 동작HKWorkoutSession→ 실제 운동 세션을 시작하고 상태를 관리하는 객체 (예: 시작, 일시정지, 종료)HKLiveWorkoutBuilder→ 운동 중 실시간 데이터를 수집하는 객체 (예: 거리, 심박수, 칼로리 등)HKLiveWorkoutDataSource→ Builder가 어떤 데이터를 어떤 방식으로 수집할지를 정의하는 데이터 공급자[HKWorkoutSession] -연결 → [HKLiveWork.. watchOS 탭뷰랑 네비게이션 타이틀 탭뷰워치에도 탭뷰라고 하는것을 알고있으셨는지요저는 이번에 알았어요하핫근데 iOS랑 다른 점은 iOS는 진입 탭을 지정할 수 있지만WatchOS는 무조건 첫번째 있는 화면이 진입탭이 됩니다...탭뷰를 사용할때!! 그런것이고그게 싫다면 커스텀을 해야하는데요..이게 원래 우리팀에서 만든 피그마화면인데 오른쪽 뷰가 탭뷰에서 첫번째로 보이고 왼쪽뷰가 슬라이드했을때 왼쪽에서 나타났으면 하는 화면인데!!!! 무슨 말인지 모르겠다면 그 운동앱처럼 왼쪽화면에서 일시정지랑 그런거 있는 그런화면.. 하고싶었던건데 저렇게는 기본 탭뷰로는 절대 안된다는,.. (혹시 된다면 알려주삼) TabView는 내부적으로 왼쪽에서 오른쪽 배열로 구성(TabView는 앞에서 뒤로만 이동하는 구조) GeometryReader + DragGe.. 애플 플랫폼 OS별 디자인 특징 - GA 애플 OS는 6개~iOSiPadOSmacOSwatchOSvisionOStvOS 쥐고있는 손 외의 다른 손을 사용해야 하는다이나믹 아일랜드노트 iOS 언제 어디서든 간결한 iPadOS 화면이 넓어서 아이콘간격 넓음, 위젯도 큼 포인터가 몇년 전부터 생성됨 (요소들에 맞춰서 변경됨)입력의 지속성, 탐색 계층(네이게이션 깊이 줄이기) macOS 고정된 자세로 사용고도의 전문적 생산을 목적으로 한 기기 = 복잡성이 상승해도 가능명료한 시각적 구조화 + 조작 일관성넓은 화면을 활용한 Flat한 계층 활용하기 + 메뉴 활용한....어쩌고 watchOS - 한눈에 딱 보이는낮은 정밀성으로도 조작할 수 있는 UI버튼은 커야하고 여백이 넓어야함최소한의 탭과 컨텐츠 스크롤Page control & ...탐색 안정성 .. HealthKit - 심박수에 대해서 궁금해용 (궁금한거 찾아볼수록 추가 예정) 헬스킷을 활용해서 심박수(Heart Rate) 데이터를 다루는 방법을 알아보자 헬스킷에서 심박수 데이터를 어떻게 측정하고 가져올까!? 심박수 측정 장치: Apple Watch 심박수는 iPhone이 아닌 Apple Watch에서 측정광학 심박수 센서가 손목의 혈류를 감지해 BPM(Beats Per Minute)을 계산아래 상황에서 자동으로 측정:사용자가 Apple Watch를 착용하고 있을 때휴식 중인 상태일 때 (주기적 자동 측정)운동 중 (Workout 앱 실행 시)Breathe 앱 사용 시수동으로 측정한 경우 (심박수 앱에서 직접 실행)⌚︎iPhone 자체에는 심박수 센서가 없기 때문에 Apple Watch 연동이 필수 https://developer.appl.. HealthKit HealthKitHealthKit은 iPhone과 Apple Watch의 건강 및 피트니스 데이터를 위한 중앙 저장소를 제공합니다. 사용자의 허가 하에 앱은 HealthKit 저장소와 통신하여 이 데이터에 접근하고 공유할 수 있습니다. https://developer.apple.com/documentation/healthkit HealthKit | Apple Developer DocumentationAccess and share health and fitness data while maintaining the user’s privacy and control.developer.apple.com 주로 사용할 수 있는 기능걸음 수 : 사용자의 걸음 수소모 칼로리 : 운동 중 소모한 칼로리 기록심박수 : 사용.. 이전 1 2 3 4 5 ··· 30 다음 목록 더보기