переходить вперед и назад массив строк с двумя кнопками - PullRequest
0 голосов
/ 16 мая 2018

Я хочу показать первый элемент в viewdidload (), а затем дать пользователю перейти к следующему элементу в массиве и иметь возможность вернуться назад и отключить кнопку возврата, если это первый индекс, и отключить кнопку, если егопоследний индекс.Вот мой код

@IBAction func back(_ sender: Any) {
   c -= 1

   if c == thkrArray.count{
       nextButton.isEnabled = false
   }
   if c == 0{
       backButton.isEnabled = false
   }
   let thkr: String = thkrArray[c]
   Text1.text = thkr

}

@IBAction func A2(_ sender: Any) {
   c += 1

   if c == thkrArray.count{
       nextButton.isEnabled = false
   }
   if c == 0 {
       backButton.isEnabled = false
   }
   if c > 0{
       backButton.isEnabled = false
   }
   let thkr: String = thkrArray[c]
   Text1.text = thkr

}

1 Ответ

0 голосов
/ 16 мая 2018

Самый простой способ добиться этого - добавить наблюдателя в c:

var c: Int = 0 {
    didSet {
        Text1.text = thkrArray[c]

        backButton.isEnabled = c > 0
        nextButton.isEnabled = c < thkrArray.count - 1
    }
}

@IBAction func back(_ sender: Any) {
    c -= 1
}

@IBAction func A2(_ sender: Any) { // isn't this `next`?
    c += 1
}

override func viewDidLoad() {
    super.viewDidLoad()
    c = 0
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...