**How to work with IB Constraints and NSLayoutConstraint**?

I want to programmatically fine-tune my Interface Builder Storyboard layout, as I can't achieve desired layout with constraints in Interface Builder alone.

The iPhone 4S and iPhone 6 Plus are particularly challenging for my iOS 8 layouts.

---

Questions:

* How do I find **screen dimensions** when the UIViewController appears?
* How do I detect **orientation changes** & resulting screen dimensions in iOS 8?
* How do I **modify layout constraints** programmatically?
* How do I deal with IB **size classes** programmatically?

---

Maybe by "weighting" components in IB, I could compensate for layout problems with iPhone 6 Plus size class. But it seems potentially more challenging than making a few tweaks programmatically.

**iOS 8 Supported Devicea are a Quagmire of Divergent Screen Sizes**

The iPhone 4S, with its ridiculously *tiny* screen, is still required to be supported by iOS 8 apps. It's quite a squeeze, and challenging to an almost absurd degree for apps better suited to larger iPhone screens to be satisfactory on the 4S.

And iPhone 6 Plus is virtually an iPad "mini-mini", except for its tighter aspect ratio. The relatively gargantuan iPhone 6 plus requires a more even/spacious component distribution than other iPhones. Yet Interface Builder size classes don't cover the iPhone 6 Plus very well (so far).