2016-12-19 5 views
0

SwiftのUIButtonのCALayerボトムボーダーを削除するには?ボトムボーダーはweek1ボタンに追加されますが、button2ボタンをクリックすると削除されません。SwiftのUIButtonのCALayerボトムボーダーを削除するには?

私はここにも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にタイプミスがあると思います。 isSelectedbutton2falseである必要がありますので、didTapButtonの条件が必要に応じて機能します。

関連する問題