I want to save different struct in a array. And i want to update the array when any of the struct value changed.
My structs are -
struct A{
var name: String
var village: String
}
struct B{
var name: String
var village: String
}
struct C{
var name: String
var village: String
}
struct D{
var name: String
var village: String
}
struct E{
var name: String
var village: String
}
class ViewController: UIViewController {
var dataArray = [A.self, B.self, C.self, D.self, E.self] as [Any]
override func viewDidLoad() {
super.viewDidLoad()
}
private func changeStructValue(){
//update struct D Value
if let nameOne = textFieldOne.text{
let a = A(name: nameOne, village: “abcd”)
dataArray[0] = a
}
//update struct D Value
if let nameFour = textfieldFour.text{
let d = D(name: nameFour, village: “efgh”)
dataArray[3] = d
}
}
Can I do like this? Or I am doing in wrong way?
And also I want to delete the struct which is nil from the array -
private func submitButton(){
//Remove empty struct
dataArray = dataArray.filter { $0 != nil }
}
}
can I try like this?
