我們在使用Auto Layout的時候有時會遇到這個參數,Multiplier的直譯是“乘數”,其實它的真是含義是一個比例。用慣了Autosizing的朋友肯定跟我一樣學習了很久的“限制”。說實話,AutoLayout雖然嚴謹,能力也很強大,但是便捷性比Autosizing差太多,同時我們在布局上下的功夫會是以前的9倍(别問我怎麼算出來的,地球人);OK,進入正題,下面我們開始實驗!
步驟1、建立一個button,我把它取名為Connect,然後讓他在X軸和Y軸都居中對齊(我的上一篇部落格有介紹)
步驟2、選中按鈕的Y軸限制,将Multiplier調為5,之後你會看到下圖效果
步驟3、我們在iPhone6的模拟器上運作,并且輸出
NSLog(@"view.frame = %@",NSStringFromCGRect(self.view.frame));
NSLog(@"view.center = %@",NSStringFromCGPoint(self.view.center));
NSLog(@"BtnConnect.frame = %@",NSStringFromCGRect(BtnConnect.frame));
NSLog(@"BtnConnect.center = %@",NSStringFromCGPoint(BtnConnect.center));
結果:
2014-09-22 23:29:49.378 MCI14[10925:993808] view.frame = {{0, 0}, {375, 667}}
2014-09-22 23:29:49.378 MCI14[10925:993808] view.center = {187.5,333.5}
2014-09-22 23:29:49.419 MCI14[10925:993808] BtnConnect.frame = {{132.5, 51.5}, {110, 30}}
2014-09-22 23:29:49.419 MCI14[10925:993808] BtnConnect.center = {187.5,66.5}
y1=66.5;
y2=333.5;
進而分析得出:y2=5*y1;
結論:y2=Multiplier*y1;