MyBagView
2023.08.29
import SwiftUI
class MBData: ObservableObject{
@Published var MBkosu : Int{
didSet{
UserDefaults.standard.set(MBkosu,forKey:"MBkey")
}
}
init(){
MBkosu = UserDefaults.standard.object(forKey:"MBkey") as? Int ?? 0
}
}
struct MyBagView: View{
@EnvironmentObject var mbData : MBData
@State var MBkosu:Int = 0
let MBpar = 47
let MBtanka = 3
var body : some View{
VStack(alignment: . leading, spacing: 20){
Image("マイバッグ")
.resizable()
.resizable().aspectRatio(contentMode: .fill)
.frame(width:300,height:300)
.clipped()
.cornerRadius(10)
.shadow(radius:10)
.foregroundColor(.black)
Text ("\(MBpar)gのCO2削減 \(MBtanka)円の節約")
Stepper(value: $mbData.MBkosu, in: 0...100000, step:1) {
Text("行動回数:\(mbData.MBkosu)")
}.frame(width:240)
let MBsoukei = MBpar * mbData.MBkosu
let MBsougaku = mbData.MBkosu * MBtanka
Text("総削減量:\(MBsoukei)g").font(.headline)
+ Text("(概算)").font(.footnote)
Text("節約できたお金:\(MBsougaku)円")
}
}
}
struct MyBagView_Previews: PreviewProvider {
static var previews: some View {
MyBagView()
.environmentObject(MBData())
}
}