Junior — Middle
Чӣ гуна коркарди чанд гӯшкунак, ки ба як ҳодисаи клик пайваст шудаанд, анҷом дода мешавад?
sobes.tech AI
Ҷавоб аз AI
Дар iOS, агар ба як ҳодиса, масалан, клик (touchUpInside), чанд гӯшкунанда (target-action) пайваст карда шуда бошанд, онҳо дар тартиби илова кардан даъват мешаванд. Ҳар як гӯшкунанда ҳодисаро мегирад ва метавонад логикаи худро иҷро кунад.
Агар шумо хоҳед, ки тартибро назорат кунед ё пешгирӣ кунед, ки ҳодиса ба дигар гӯшкунандагон расад, метавонед инро дар дохили ҳалли худ идора кунед, масалан, бо ғайрифаъол кардани гӯшкунандагони дигар ё истифодаи рамзҳо. Аммо, механизм стандартии 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("Ҳалли дуввум")
}
Ҳангоми клик, ҳар ду ҳалли пайваста даъват мешаванд.