Tutte queste risposte sono abbastanza buone, in realtà trovo difficile trovare difetti profondi in nessuna di esse. L'auto layout è difficile - ma niente è più difficile di quanto tu lo faccia nella tua mente. Ho scritto interfacce di merda che sembravano ok, e interfacce più semplici che funzionavano meravigliosamente. Se trovi che uno Storyboard diventa buggy o ingestibile allora considera di scaricare alcune di quelle funzionalità su un altro Storyboard e ViewController. I tuoi utenti lo apprezzeranno.
Nonostante tutto ciò Autolayout è al massimo un punto di partenza. Devo poi andare a viewDidLoad o viewWillAppear (catturando lo stato proprio prima che sia sui bulbi oculari degli utenti) e spesso modificare una classe di dimensioni per lavorare su una vista particolare per quello che voglio VERAMENTE che sia. C'è anche la possibilità di rendere una vista o un pulsante che è davvero solo una vista @IBInspectable. Questo vi permetterà di cambiare il suo comportamento nel XIB, senza dover lottare molto con il fatto che sia buggato/scorrevole nel XIB.
Sono attualmente nel back end e nel lato logico dei miei progetti. Quindi questi sono solo consigli generali di progettazione. Fatelo funzionare sul dispositivo che avete in tasca e poi estendetelo per lavorare su quelli che volete supportare.