Объявите переменную наподобие currentVisibleViews в вашем ViewController, и предположим сначала, что видна только первая, поэтому мы начинаем с числа как 1, а также добавляем ваши представления в массив для более легкого управления:
var currentVisibleViews = 1
var viewArray = [UIView]()
В viewDidLoad
добавьте свои просмотры в viewArray
:
view1.isHidden = false
view2.isHidden = true
view3.isHidden = true
viewArray.append(view1)
viewArray.append(view2)
viewArray.append(view3)
Тогда в вашей кнопке:
@IBAction func addViewButton(_ sender: Any) {
if currentVisibleViews > 2 {
viewArray.forEach { (view) in
view.isHidden = true
}
currentVisibleViews = 0
} else {
viewArray[currentVisibleViews].isHidden = false
currentVisibleViews += 1
}
}
Код выше работает так:
- Сначала видны все виды
- Первое нажатие скроет все виды
- Тогда каждое нажатие сделает вид видимым
- Перейти к шагу 2 (как только все виды видны)
Таким образом, вы можете иметь только одну функцию для управления всеми вашими представлениями, это больше не должен быть IBAction, это может быть просто метод вашего ViewController