Junior — Middle
Kako se vrši obrada više slušaoca povezanih sa jednim događajem klika?
sobes.tech АИ
Одговор од АИ
У iOS, ако једном догађају, на пример, клику (touchUpInside), буде додато више слушалаца (target-action), они се позивају у реду додавања. Свaki слушалац добија догађај и може извршити своју логику.
Ако желите да контролишете редослед или спречите даље обрађивање, можете то управљати унутар руковаоца, на пример, онемогућавањем других слушалаца или коришћењем флагова. Међутим, стандардни механизам UIKit не пружа уграђени начин да зауставите ширење догађаја међу слушаоцима.
Пример додавања више руковаоца на UIButton:
button.addTarget(self, action: #selector(firstHandler), for: .touchUpInside)
button.addTarget(self, action: #selector(secondHandler), for: .touchUpInside)
@objc func firstHandler() {
print("Први руковаоц")
}
@objc func secondHandler() {
print("Други руковаоц")
}
Када се кликне, оба руковаоца ће бити позвана у реду.