I am trying to understand why my subtitle is not getting strokes.
Below is a gif showing the behavior that I am encountering: when I click the blue button on the right, nothing happens (it is assumed that the background from the left corner should change color). When I click the green button on the left, it correctly receives the touch event, the applied TouchDown action fires and the color of the view changes.

This “application” is obviously not a real application and is simply intended to illustrate the behavior that I encounter. Indeed, what I need is to learn how to implement the usual “pop-up menu” template that you see in many applications; usually with an accompanying hamburger button.
In many of these applications, it seems that the main content of the application is being moved to the side to open the menu, "hiding" under the application, one way or another. I am trying to reproduce the same behavior here.
I am embedding ViewController code here. The code you see below is all that I have.
import UIKit class ViewController: UIViewController { var originalX : CGFloat! var originalY : CGFloat! var containerView = UIView() var button : UIButton! var button2 : UIButton! override func viewDidLoad() { super.viewDidLoad() originalX = self.view.frame.origin.x originalY = self.view.frame.origin.y button = UIButton(frame: CGRectMake(200, 25, 100, 100)) button.backgroundColor = UIColor.greenColor() button.addTarget(self, action: "foo", forControlEvents: .TouchDown) view.addSubview(button) containerView.frame = CGRectMake(self.view.frame.width, originalY, 150, self.view.frame.height) containerView.userInteractionEnabled = true containerView.backgroundColor = UIColor.magentaColor() containerView.clipsToBounds = false button2 = UIButton(frame: CGRectMake(25, 25, 100, 100)) button2.backgroundColor = UIColor.cyanColor() button2.addTarget(self, action: "bar", forControlEvents: .TouchDown) view.addSubview(containerView) containerView.addSubview(button2) } @IBAction func left() { UIView.animateWithDuration(0.3) { self.view.frame = CGRectMake(self.originalX - 150, self.originalY, self.view.frame.width, self.view.frame.height) } } @IBAction func right() { UIView.animateWithDuration(0.3) { self.view.frame = CGRectMake(self.originalX, self.originalY, self.view.frame.width, self.view.frame.height) } } func foo() { UIView.animateWithDuration(1.0) { self.view.backgroundColor = UIColor.redColor() } } func bar() { UIView.animateWithDuration(1.0) { self.view.backgroundColor = UIColor.blueColor() } } }