Welcome to Auto Layout Fundamentals. In this series, you'll learn about the fundamental concepts that power Auto Layout. At the end of this series, you'll have a solid understanding of Auto Layout and how you can use it in your projects.

This series is aimed at both beginner and more experienced developers. Developers often don't take the time to learn the ins and outs of Auto Layout, and this series touches on the fundamental building blocks of Auto Layout.

Series Outline

We start by comparing Auto Layout with other solutions for creating layouts, and I highlight why Auto Layout is the preferred solution for modern application development.

After taking a close look at the anatomy of constraints, we zoom in on constrained priorities, implicit and explicit constraints, and intrinsic content size. Along the way, we discuss other concepts such as content hugging and content compression resistance priorities, required and optional constraints, and layout ambiguity.

Interface Builder

With the basics covered, we explore the tools Interface Builder hands us to create layouts with Auto Layout. A series about the fundamentals of Auto Layout isn't complete without a detailed look at stack views, a great addition to Auto Layout. I leave you with a few tips and best practices, and I show you how you can debug issues that are related to Auto Layout.

What You Won't Learn

In this series, we won't focus on working with Auto Layout in code. That is a more advanced application of Auto Layout that isn't required to benefit from Auto Layout. In fact, you don't need to have any knowledge of Swift or Objective-C to follow along. I hope you enjoy the series.