ActionView

import SwiftUI

struct ActionView: View {
    @EnvironmentObject var mbData: MBData
    @State var MBkosu: Int = 0
    let MBpar = 47
    let MBtanka = 3
    
    @EnvironmentObject var ncData: NCData
    @State var NCkosu: Int = 0
    let NCpar = 147
    let NCtanka = 12
    
    
    @EnvironmentObject var skData: SKData
    @State var SKkosu: Int = 0
    let SKpar = 33
    let SKtanka = 21
    
    
    
    @EnvironmentObject var idData: IDData
    @State var IDkosu: Int = 0
    let IDpar = 117
    let IDtanka = 8
    
    
    @EnvironmentObject var swData: SWData
    @State var SWkosu: Int = 0
    let SWpar = 321
    let SWtanka = 30
    
    
    @EnvironmentObject var tvData: TVData
    @State var TVkosu: Int = 0
    let TVpar = 175
    let TVtanka = 16
    
    @EnvironmentObject var dnData: DNData
    @State var DNkosu: Int = 0
    let DNpar = 225
    let DNtanka = 13
    
    
    @EnvironmentObject var jaData: JAData
    @State var JAkosu: Int = 0
    let JApar = 345
    let JAtanka = 22
    
    
    @EnvironmentObject var dgData: DGData
    @State var DGkosu: Int = 0
    let DGpar = 88
    let DGtanka = 5
    
    
    @EnvironmentObject var acData: ACData
    @State var ACkosu: Int = 0
    let ACpar = 268
    let ACtanka = 16
    
    var body: some View {
            NavigationStack{
                List{
                    Section(header:Text("Daily Life")){
                        NavigationLink(destination: MyBagView()) {
                            HStack{
                                Image("マイバッグ")
                                    .resizable()
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("マイバッグを使用する")
                                Spacer()
                                Text("\(mbData.MBkosu)回")
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                            }
                        }
                        
                        NavigationLink(destination: DanranView()) {
                            HStack{
                                Image("団欒")
                                    .resizable()
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("家族団欒し、照明エアコンの使用を減らす")
                                Spacer()
                                Text("\(dnData.DNkosu)回")
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                            }
                        }
                    }
                    Section(header:Text("Water Use")){
                        NavigationLink(destination: ShowerView()) {
                            HStack{
                                Image("シャワー")
                                    .resizable()
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("ちくいち止めてシャワーの使用を3割減")
                                Spacer()
                                Text("\(swData.SWkosu)回")
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                            }
                        }
                        NavigationLink(destination: SentakuView()) {
                            HStack{
                                Image("洗濯")
                                    .resizable()
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("お風呂の水を洗濯に使う")
                                Spacer()
                                Text("\(skData.SKkosu)回")
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                                
                            }
                        }
                        
                        NavigationLink(destination: JaView()) {
                            HStack{
                                Image("半身浴")
                                    .resizable()
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("半身浴をする")
                                Spacer()
                                Text("\(jaData.JAkosu)回")
                                    .multilineTextAlignment(.trailing)
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                            }
                        }
                    }
                    Section(header:Text("Power Use")){
                        NavigationLink(destination: AirconView()) {
                            HStack{
                                Image("エアコン")
                                    .resizable()
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("エアコンの設定温度を控えめにする")
                                Spacer()
                                Text("\(acData.ACkosu)回")
                                    .foregroundColor(.blue)
                                    .padding(.leading)
                                
                            }
                        }
                        NavigationLink(destination: DengenView()) {
                            HStack{
                                Image("冷蔵庫")
                                    .resizable()
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("冷蔵庫の設定温度を弱める")
                                Spacer()
                                Text("\(dgData.DGkosu)回")
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                                
                            }
                        }
                    }
                    Section(header:Text("Car Use")){
                        NavigationLink(destination: TVView()) {
                            HStack{
                                Image("エコドライブ")
                                    .resizable().aspectRatio(contentMode: .fill)
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("加減速の少ないエコドライブをする")
                                Spacer()
                                Text("\(tvData.TVkosu)回")
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                                
                            }
                        }
                        NavigationLink(destination: IDView()) {
                            HStack{
                                Image("アイドリングストップ")
                                    .resizable()
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("アイドリングストップを5分間行う")
                                Spacer()
                                Text("\(idData.IDkosu)回")
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                                
                            }
                        }
                        NavigationLink(destination: NoCarView()) {
                            HStack{
                                Image("通勤")
                                    .resizable().aspectRatio(contentMode: .fill)
                                    .frame(width: 70, height: 70)
                                    .clipShape(Circle())
                                    .overlay(Circle().stroke(Color.gray));
                                Text("1km車の使用をやめる")
                                Spacer()
                                Text("\(ncData.NCkosu)回")
                                    .padding(.leading)
                                    .foregroundColor(.blue)
                            }
                        }
                    }.navigationTitle("Action")
                }.navigationViewStyle(.stack)
            }.environmentObject(mbData).environmentObject(ncData)
                .environmentObject(skData).environmentObject(idData)
                .environmentObject(swData).environmentObject(tvData)
                .environmentObject(dnData).environmentObject(jaData)
                .environmentObject(dgData).environmentObject(acData)
            
        }
    }
        struct ActitonView_Previews: PreviewProvider {
            static var previews: some View {
                ActionView()
                    .environmentObject(MBData())
                    .environmentObject(NCData())
                    .environmentObject(SKData())
                    .environmentObject(IDData())
                    .environmentObject(SWData())
                    .environmentObject(TVData())
                    .environmentObject(DNData())
                    .environmentObject(JAData())
                    .environmentObject(DGData())
                    .environmentObject(ACData())
                
            }
        }
タイトルとURLをコピーしました