2016-12-19 2 views
0

Как удалить нижнюю границу CALayer UIButton в Swift? Нижняя граница добавляется к кнопке week1, но не удаляется при нажатии на кнопку week2.Как удалить нижнюю границу CALayer UIButton в Swift?

Я добавляю снимок экрана также enter image description here

Вот мой код:

 @IBAction func week1BtnTapped(_ sender: UIButton) { 
      week1.isSelected = true 
      didTapButton(btnClicked: week1) 
      week2.isSelected = true 
      didTapButton(btnClicked: week2) 
      btnSelectedText = "Week-1" 
      serviceCall() 
     } 

     @IBAction func week2BtnTapped(_ sender: UIButton) { 
      week2.isSelected = true 
      week1.isSelected = false 
      didTapButton(btnClicked: week1) 
      btnSelectedText = "Week-2" 
      didTapButton(btnClicked: week2) 
      serviceCall() 
     } 

     func didTapButton(btnClicked:UIButton){ 
      let border = CALayer() 
      if btnClicked.isSelected { 
      border.borderColor = UIColor.gray.cgColor 
      border.frame = CGRect(x: 2, y: btnClicked.frame.size.height - 2.0, width: btnClicked.frame.size.width - 5, height: btnClicked.frame.size.height) 

      border.borderWidth = 3.0 
      btnClicked.layer.addSublayer(border) 
      btnClicked.layer.masksToBounds = true 
      } 
      else{ 
      border.borderColor = UIColor.white.cgColor 
      border.borderWidth = 0.0 
      border.frame = CGRect(x: 2, y: btnClicked.frame.size.height , width: btnClicked.frame.size.width - 5, height: btnClicked.frame.size.height) 
      btnClicked.layer.masksToBounds = true 
      } 
     } 

ответ

0

Я думаю, что есть опечатка в week1BtnTapped. isSelectedbutton2 должен быть false, так что условие в didTapButton будет работать так, как вы хотите.

Смежные вопросы