Symbol Replacement rule <visualFormatString> (<orientation>:)?(<superview><connection>)?<view>(<connection><view>)*(<connection><superview>)? <orientation> H|V <superview> | <view> [<viewName>(<predicateListWithParens>)?] <connection> e|-<predicateList>-|- <predicateList> <simplePredicate>|<predicateListWithParens> <simplePredicate> <metricName>|<positiveNumber> <predicateListWithParens> (<predicate>(,<predicate>)*) <predicate> (<relation>)?(<objectOfPredicate>)(@<priority>)? <relation> ==|<=|>= <objectOfPredicate> <constant>|<viewName>(see note) <priority> <metricName>|<number> <constant> <metricName>|<number> <viewName> Parsed as a C identifier. This must be a key mapping to an instance ofNSViewin the passedviews dictionary. <metricName> Parsed as a C identifier. This must be a key mapping to an instance ofNSNumberin the passed metrics dictionary. <number> As parsed bystrtod_l, with the C locale. 我們以 btn1 和btn2 為例子 [btn1]-[btn2] 這個 “-” 標准連接字符 ,表示相距標准距離,好像是 8 [btn1 (>= 10)] btn1 寬度至少為10 H:|-50 -[btn1]-30-| “H“表示水平,”|”表示父視圖, 這說明 btn1 在水平方向距離父視圖左邊50 右邊30 [btn1(==btn2)] btn1 和btn2 寬度相等 [btn1 (>= 10,<= 50)] btn1的寬度在10和50 之間 說下這個<view> 我們可以這樣寫 |-[btn1]-| 也可以這樣 |- 50-[btn1]-| 也可以這樣 |-(>=10,<=30) - [btn1 (>=30)] -(<=20)-|