Я добавил в свое приложение действие смахивания.У меня есть 5 кнопок, которые представляют дни недели.Когда я нажимаю на одну кнопку, это меняет массив моего табличного представления и некоторые вещи.Действие «Размах» действует точно так же и прекрасно работает, но при пролистывании иногда оно останавливается и снова работает через несколько секунд.это время ожидания.
override func viewDidLoad() {
super.viewDidLoad()
let rightSwipe = UISwipeGestureRecognizer(target: self, action: #selector(actionSwipeRight))
rightSwipe.direction = .right
let leftSwipe = UISwipeGestureRecognizer(target: self, action: #selector(actionSwipeLeft))
leftSwipe.direction = .left
view.addGestureRecognizer(rightSwipe)
view.addGestureRecognizer(leftSwipe)
}
И код прокрутки
// s'éxécute lorsque qu'un swipe vers la droite est effectué
@objc private func actionSwipeRight() {
print("swipe right")
switch self.selectedDayinHoraire {
case "LUNDI" :
return
case "MARDI" :
changeDay(for: "LUNDI")
case "MERCREDI" :
changeDay(for: "MARDI")
case "JEUDI" :
changeDay(for: "MERCREDI")
case "VENDREDI" :
changeDay(for: "JEUDI")
default: break
}
}
// s'éxécute lorsque qu'un swipe vers la gauche est effectué
@objc private func actionSwipeLeft() {
print("swipe left")
switch self.selectedDayinHoraire {
case "LUNDI" :
changeDay(for: "MARDI")
case "MARDI" :
changeDay(for: "MERCREDI")
case "MERCREDI" :
changeDay(for: "JEUDI")
case "JEUDI" :
changeDay(for: "VENDREDI")
case "VENDREDI" :
return
default: break
}
}
func changeDay(for day : String) {
switch day {
case "LUNDI" :
self.menuSelectionné(btn: self.btnLundi)
self.LabelDynamiqueJour.text = " horaire du lundi"
self.selectedDayinHoraire = "LUNDI"
case "MARDI" :
self.menuSelectionné(btn: self.btnMardi)
self.LabelDynamiqueJour.text = " horaire du Mardi"
self.selectedDayinHoraire = "MARDI"
case "MERCREDI" :
self.menuSelectionné(btn: self.btnMercredi)
self.LabelDynamiqueJour.text = " horaire du Mercredi"
self.selectedDayinHoraire = "MERCREDI"
case "JEUDI" :
self.menuSelectionné(btn: self.btnJeudi)
self.LabelDynamiqueJour.text = " horaire du Jeudi"
self.selectedDayinHoraire = "JEUDI"
case "VENDREDI" :
self.menuSelectionné(btn: self.btnVendredi)
self.LabelDynamiqueJour.text = " horaire du vendredi"
self.selectedDayinHoraire = "VENDREDI"
default: break
}
tableviewHoraire.reloadData()
}
Действия кнопок:
@IBAction func btnLun(_ sender: UIButton) {
changeDay(for: "LUNDI")
}
@IBAction func btnMar(_ sender: UIButton) {
changeDay(for: "MARDI")
}
@IBAction func btnMer(_ sender: UIButton) {
changeDay(for: "MERCREDI")
}
@IBAction func btnJeu(_ sender: UIButton) {
changeDay(for: "JEUDI")
}
@IBAction func btnVen(_ sender: UIButton) {
changeDay(for: "VENDREDI")
}
Вы можете видеть, что действие прокрутки делает то же самое, но иногда оно зависаетПроверьте сами, если хотите, проблема исходит от представления Horaire.https://github.com/CedricLnx/School-Companion