ioscontrolsswift3segmentedcontrol

control 3 Segmented


am using Xcode 8.1 , swift 3.0

i have code Segmented its work with 2 control

when i try add 3 its not working any idea what is wrong with my code

this one work with 2 Segmented

@IBAction func showComponent(_ sender: UISegmentedControl) {
   if sender.selectedSegmentIndex == 0 {
      UIView.animate(withDuration: 0.0, animations: {
         self.containerViewA.alpha = 1
         self.containerViewB.alpha = 0
      })     
   } else {
      UIView.animate(withDuration: 0.0, animations: {
         self.containerViewA.alpha = 0
         self.containerViewB.alpha = 1
      })
   } 
} 

this one not working with 3 Segmented

here am trying new code with 3x Segmented control;

@IBAction func showComponent(_ sender: UISegmentedControl) {
   if sender.selectedSegmentIndex == 0 {
      UIView.animate(withDuration: 0.5, animations: {
         self.containerViewA.alpha = 1
         self.containerViewB.alpha = 0
         self.containerViewC.alpha = 0
      })

      UIView.animate(withDuration: 0.5, animations: {
         self.containerViewA.alpha = 0
         self.containerViewB.alpha = 1
         self.containerViewC.alpha = 0
   } else {     
      UIView.animate(withDuration: 0.5, animations: {
         self.containerViewA.alpha = 0
         self.containerViewB.alpha = 0
         self.containerViewC.alpha = 1
      })
   } 
} 

Solution

  • well i was trying with this code its work now :)

    import UIKit
    class ViewController: UIViewController {
        @IBOutlet weak var orange: UIView!
        @IBOutlet weak var yellow: UIView!
        @IBOutlet weak var red: UIView!
        override func viewDidLoad() {
            super.viewDidLoad()
            // Do any additional setup after loading the view, typically from a nib.
        }
        override func didReceiveMemoryWarning() {
            super.didReceiveMemoryWarning()
            // Dispose of any resources that can be recreated.
        }
        @IBAction func showComponent(_ sender: UISegmentedControl) {
            if sender.selectedSegmentIndex == 0 {
                    self.orange.alpha = 1
                  self.yellow.alpha = 0
                    self.red.alpha = 0
            }
                  if sender.selectedSegmentIndex == 1 {
                    self.orange.alpha = 0
                     self.yellow.alpha = 1
                   self.red.alpha = 0
            }
                    if sender.selectedSegmentIndex == 2 {
                   self.orange.alpha = 0
                    self.yellow.alpha = 0
                    self.red.alpha = 1
              }
         }
    }