Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions Nemulert/Component/ConnectionStateView.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
//
// ConnectionStateView.swift
// Nemulert
//
// Created by 細田彩香 on 2026/01/19.
//

import SwiftUI

struct ConnectionStateView: View {
let isConnected: Bool

var body: some View {
Image(systemName: "airpods.pro")
.resizable()
.foregroundColor(isConnected ? .primary : .red)
.frame(width: 130, height: 80)
}
}

#Preview {
VStack {
ConnectionStateView(isConnected: true)
ConnectionStateView(isConnected: false)
}
}
31 changes: 17 additions & 14 deletions Nemulert/Screen/DetectingScreen.swift
Original file line number Diff line number Diff line change
Expand Up @@ -12,23 +12,26 @@ struct DetectingScreen: View {
@State private var model = DetectingModel()

var body: some View {
LottieView(name: "Nemulert")
.padding()
.onAppear {
model.onAppear()
}
.onChange(of: scenePhase) { oldPhase, newPhase in
switch (oldPhase, newPhase) {
case (.inactive, .active), (.background, .active):
Task {
await model.onSceneChanged()
VStack{
LottieView(name: "Nemulert")
.padding()
.onAppear {
model.onAppear()
}
.onChange(of: scenePhase) { oldPhase, newPhase in
switch (oldPhase, newPhase) {
case (.inactive, .active), (.background, .active):
Task {
await model.onSceneChanged()
}

default:
break
}

default:
break
}

}
ConnectionStateView(isConnected: model.isConnected)
}
}
}

Expand Down