Hi, I am trying to constrain a label to the bottom of the safe area, but the constraint ends up saying Safe Area.bottom = Label.bottom. I would figure it should say Label.bottom = Safe Area.bottom, I don't want to set the bottom of the safe area?
There are lots of great online resources for learning constraints, but for now the short answer is: the order doesn’t matter. Don’t think of constraints like an assignment operation in a procedural language. Rather, a constraint just expresses the result you want. The layout system then looks at the constraints and figures out a layout that satisfies them.
In this case, the safe area is always fixed in position, so the system knows unambiguously exactly where the label should go: 326 points up from the bottom.
But if you prefer, you can switch the order of the views to (say) make things more clear in Interface Builder. In the attributes inspector for the constraint, click on either First Item or Second Item and then select Reverse First And Second Item.