0Pricing
Swift Academy · 강의

@State: 뷰의 로컬 변경 가능 상태

@State를 사용해 뷰의 비공개 상태로 UI 업데이트를 구동합니다.

@State: 뷰의 로컬 변경 가능 상태은(는) CoddyKit의 무료 Swift Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Swift Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Swift Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

환영합니다

`@State`는 SwiftUI에서 가장 간단한 상태 관리 도구입니다. 뷰 내부에 변경 가능한 값을 저장하고, 값이 바뀔 때마다 다시 렌더링합니다.

@State 기초

```swift struct Counter: View { @State private var count = 0 var body: some View { Button("Count: \(count)") { count += 1 } } } ```

관례에 따른 비공개 사용

`@State` 프로퍼티에는 `private`을 표시합니다. 이 프로퍼티는 뷰의 구현 세부 사항이며 인터페이스의 일부가 아니기 때문입니다.

상태 저장소

SwiftUI는 구조체와 별도로 `@State`의 내부 저장소를 관리합니다. 렌더링할 때마다 뷰 구조체가 다시 생성되더라도 상태 값은 유지됩니다.

문자열과 함께 사용하는 @State

```swift struct NameInput: View { @State private var name = "" var body: some View { TextField("Enter name", text: $name) Text("Hello, \(name)!") } } ```

불리언과 함께 사용하는 @State

```swift struct ToggleDemo: View { @State private var isOn = false var body: some View { Toggle("Enable", isOn: $isOn) if isOn { Text("Enabled!") } } } ```

다시 렌더링 트리거하기

`@State`를 변경하면 SwiftUI가 `body`를 다시 호출합니다. SwiftUI의 렌더링 엔진은 결과의 차이를 효율적으로 계산해 UI에서 변경된 부분만 업데이트합니다.

복합 값에 사용하는 @State

```swift struct Item: Identifiable { let id = UUID(); var text: String } struct ListView: View { @State private var items: [Item] = [] ... } ```

@State의 한계

• 로컬 범위에서만 사용되므로 `@Binding` 없이는 뷰 간에 공유할 수 없습니다 • 기본 타입과 작은 구조체에 적합합니다 • 공유 상태나 복잡한 상태에는 `@StateObject` / `@ObservableObject`를 사용합니다

@State와 @StateObject 비교

• `@State` — 값 타입이며 뷰가 소유하고 기본 타입에 사용합니다 • `@StateObject` — 참조 타입이며 뷰가 소유하고 ObservableObject 모델에 사용합니다

빠른 확인

`@State`를 사용할 때 뷰를 다시 렌더링하게 만드는 것은 무엇입니까?

요약

핵심 내용: • `@State`는 뷰가 소유하는 로컬 변경 가능 상태를 저장합니다 • `private`를 표시합니다 — 구현 세부 사항이기 때문입니다 • 변경 → 자동으로 다시 렌더링됩니다 • SwiftUI는 `body`를 다시 평가하는 동안에도 상태를 유지합니다 • 자식 뷰와 상태를 공유하려면 `@Binding`을 사용합니다 다음: 뷰 수정자

자주 묻는 질문

“@State: 뷰의 로컬 변경 가능 상태” 강의는 무료인가요?

네 — “@State: 뷰의 로컬 변경 가능 상태” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Swift Academy 강의 전체를 잠금 해제할 수 있습니다. Swift Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“@State: 뷰의 로컬 변경 가능 상태”에서 뭘 배우나요?

@State를 사용해 뷰의 비공개 상태로 UI 업데이트를 구동합니다. 브라우저에서 직접 실행하는 실습 코드로 Swift Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Swift Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Swift Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“@State: 뷰의 로컬 변경 가능 상태” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Swift Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Swift Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. View 프로토콜과 Body 프로퍼티
  2. @State: 뷰의 로컬 변경 가능 상태
  3. 뷰 수정자: 연결과 사용자 정의 수정자
  4. 미리 보기와 PreviewProvider
← Swift Academy(으)로 돌아가기