fix somes bug

dev_vm_Players
étudiant 10 months ago
parent 3b7d4f410b
commit 4d7ca429f8

@ -6,7 +6,7 @@ struct PlayerRow: View {
@State private var showDetailView = false
@ObservedObject var players: PlayersVM
var body: some View {
HStack {
if let image = UIImage(contentsOfFile: player.player.photo) {

@ -8,7 +8,7 @@
import SwiftUI
struct PlayerStatView: View {
var player: PlayerVM
@StateObject var player: PlayerVM
@State private var showEditView = false
@State private var showDeleteAlert = false
@ObservedObject var players: PlayersVM
@ -66,7 +66,7 @@ struct PlayerStatView: View {
.foregroundColor(.green)
}
.sheet(isPresented: $showEditView) {
EditPlayerView(isPresented: $showEditView, player: player, playersVM: players)
EditPlayerView(isPresented: $showEditView, player: player, playersVM: players, playerName: player.player.name)
}
Button(action: {

@ -36,8 +36,8 @@ public class PlayersVM: ObservableObject{
players = cdPlayers.map { PlayerVM(player: Player(name: $0.name ?? "", photo: $0.photo ?? "")) }
}
func updatePlayer(playerVM: PlayerVM) {
if let index = players.firstIndex(where: { $0.player.name == playerVM.player.name }) {
func updatePlayer(playerVM: PlayerVM, playerName: String) {
if let index = players.firstIndex(where: { $0.player.name == playerName }) {
players[index] = playerVM
CoreDataManager.shared.saveContext()
refreshPlayers()

@ -13,9 +13,12 @@ struct EditPlayerView: View {
@ObservedObject var player: PlayerVM
@ObservedObject var playersVM: PlayersVM
@State private var profileImage: UIImage? = nil
@State private var showImagePicker = false
@State private var imagePickerSourceType: UIImagePickerController.SourceType = .photoLibrary
var playerName: String
var body: some View {
VStack(spacing: 20) {
@ -54,8 +57,7 @@ struct EditPlayerView: View {
try? imageData.write(to: fileURL)
player.player.photo = fileURL.path
}
playersVM.updatePlayer(playerVM: player)
playersVM.refreshPlayers()
playersVM.updatePlayer(playerVM: player, playerName: playerName)
isPresented = false
}) {
Text("Save")

Loading…
Cancel
Save