카테고리 없음

swift] 한 개의 함수로 여러 UIButton 액션 분기처리하기

dev.jake 2021. 7. 26. 16:24
@objc func clickLeftNavi(_ sender: UIButton){
	
    if sender === button1 {
    	
    }
    else if === button2{
    }

    .......
    
    switch sender {
    	case button1: 
        	....
        case button2:
        	....
    }
}

let button1 = {
	let btn = UIButton()
    btn.translatesAutoresizingMaskIntoConstraints = false
    btn.addTarget(self, action: #selector(clickLeftNavi(_:)), for: .touchUpInside)
    return btn
}()
let button2 = {
	let btn = UIButton()
    btn.translatesAutoresizingMaskIntoConstraints = false
    btn.addTarget(self, action: #selector(clickLeftNavi(_:)), for: .touchUpInside)
    return btn
}()

 

서로 다른 UIbutton 변수에 addTargetd에 selector의 함수는 같게하여 해당 함수안에서 분기처리를 통해 버튼의 종류에 맞게 처리를 할 수 있다.