IOS, пара UIB-кнопок, связанных с одним IBAction - проблема задержки - PullRequest
0 голосов
/ 23 сентября 2018

В одном приложении VC информационная метка используется для текстового отображения количества нажатий кнопки, идея состоит в том, чтобы переключать текст по четному / неравному количеству нажатий.Я сделал это хорошо, но проблема возникла, когда я попытался связать пару (9) UIButtons с одним IBAction, где происходят обновления количества и меток.Здесь обновление этикетки отстает на один шаг от реального счета (проверено печатью (счетчиком) на консоли).

Может кто-нибудь помочь, почему это происходит?Конечно, я могу сделать это с отдельным IBAction для каждого UIButton, но одно действие и теги кнопок работают нормально, поэтому было бы неплохо сохранить код меньше с помощью одного IBAction.

import UIKit

class ViewController: UIViewController {

var player:Player = .cross

@IBOutlet weak var label: UILabel!

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
 self.label.text = "Player \(player.rawValue) is on the move"

}

@IBAction func Move(_ sender: UIButton) {
    if player == .cross {
        player = .circle
    } else {
        player = .cross
    }
    print(sender.tag)
    print("Player \(player.rawValue) is on the move")
    self.label.text = "Player \(player.rawValue) is on the move"
}

@IBAction func button(_ sender: UIButton) {
    if player == .cross {
        player = .circle
    } else {
        player = .cross
    }
    print(sender.tag)
    print("Player \(player.rawValue) is on the move")
    self.label.text = "Player \(player.rawValue) is on the move"
}

}

// функция перемещения - это обычный IBAction, который задерживает обновление метки // кнопка funcэто действие для отдельной кнопки, корректное обновление ярлыков

// отладка прогресса: аналогичный код работал без задержек на другом рабочем столе, более того, работающий код там чистый, запаздывает, когда я запускаю его на своем рабочем столе.У меня есть сомнения, что это может быть проблема с симулятором.Для справки, мой xcode сделал последние изменения несколько дней назад.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...