I have a UIImageView that is positioned in a particular way. When the user taps the image, the frame is modified in order to enlarge the image. When the user taps the image a second time it should revert back to the original position. The way I figured I'd do this is as follows:

In viewDidLoad() I save off the UIImageView frame. When the user taps the image, I modify the UImageView frame to enlarge the image. When the user taps the image again I set the UIImageView frame to the original frame I saved earlier. 

So, in viewDidLoad()

```
originalThumbnailImageFrame = imageThumbnail.layer.frame

```

Then, when the user taps the image, it gets enlarged and fills up the parent view.

```
imageThumbnail.frame = viewHeader.layer.bounds

```

When the user taps the image again, it should revert to the original frame.

```
imageThumbnail.frame = originalThumbnailImageFrame

```

However, for some reason it doesnt. It is positioned a bit to the right of its original position. What am I missing here?

I've even tried the following, just for kicks:

```
    override func viewDidLoad() {
        super.viewDidLoad()

        let tapGestureRecognizer = UITapGestureRecognizer(target: self, action:Selector("toggleFullImage:"))
        self.imageThumbnail.userInteractionEnabled = true
        self.imageThumbnail.addGestureRecognizer(tapGestureRecognizer)

    }

    override func viewWillAppear(animated: Bool) {
        super.viewWillAppear(animated)
        originalThumbnailImageFrame = imageThumbnail.frame
    }

 func toggleFullImage(img: AnyObject)
    {
        imageThumbnail.frame = originalThumbnailImageFrame!
    }

```

The result being that when the user taps the image, it gets moved to the right while I would expect it to just remain in place. *confused*