Значение счетчика для отдельной ячейки таблицы - PullRequest
0 голосов
/ 02 марта 2019

Я хочу увеличить значение countArray в табличном представлении первого контроллера представления из goButton во втором контроллере представления, а затем заставить его сохраняться, используя UserDefaults.Ниже приведен код массива контроллера второго вида

    @IBOutlet weak var counterLabel: UILabel!
@IBOutlet weak var chartLabel: LineChartView!
//label
var counterValue = float_t()

override func viewDidLoad() {
    super.viewDidLoad()
    print(counterValue)
    //print(UserDefaults.standard.dictionaryRepresentation())
}


@IBAction func goButton(_ sender: UIButton) {
    counterValue = counterValue + 1
    UserDefaults.standard.set(counterValue, forKey: "CounterValue")
    counterLabel.text = "\(counterValue)"
}

в контроллере первого вида:

let countArray = [10,20,30,40]

, который я отправил на второй виртуальный канал с помощью

New.counterValue = float_t(countArray[indexPath.row])

1 Ответ

0 голосов
/ 02 марта 2019

Вам нужно отправить весь массив вместе с индексом, затем

arr[index] += 1 
UserDefaults.standard.set(arr,forKey:"AllArr")

Когда вы вернетесь к первому Vc в viewWillAppear, перечитайте его как

arr = UserDefaults.standard.array(forKey:"AllArr") as! [Int]

Также здесьВы должны использовать Int тип

var counterValue = 0 // var counterValue:Int! // var counterValue:Int?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...