2017-02-17 51 views
-1

我試圖以編程方式複製此:正確的面具自動調整大小配置

enter image description here

我看到有很多的困惑與蘋果如何處理這一點。我嘗試了以下,但它不適用於我:

[buttonTop setAutoresizingMask:UIViewAutoresizingFlexibleHeight]; 

任何想法何去何從?

更新:

我的按鈕的代碼如下:

buttonTop = [UIButton buttonWithType:UIButtonTypeCustom]; 
buttonTop.frame = CGRectMake(0, 0, 100, 100); 
buttonTop.center = self.view.center; 
buttonTop.layer.cornerRadius = buttonTop.frame.size.width/2; 
buttonTop.clipsToBounds = YES; 
buttonTop.layer.masksToBounds = YES; 
[buttonTop setAutoresizingMask:UIViewAutoresizingFlexibleHeight]; 

if (GetUserProPic){ 
    [buttonTop sd_setImageWithURL:[NSURL URLWithString:GetUserProPic] forState:UIControlStateNormal]; 
    [buttonTop sd_setImageWithURL:[NSURL URLWithString:GetUserProPic] forState:UIControlStateSelected]; 
} else { 
    [buttonTop setImage:[UIImage imageNamed:@"avatar_icon"] forState:UIControlStateNormal]; 
    [buttonTop setImage:[UIImage imageNamed:@"avatar_icon"] forState:UIControlStateSelected]; 
} 

[self.view addSubview:buttonTop]; 

輸出看起來是這樣的:

enter image description here

不過,我會把它想看起來像這樣:

enter image description here

+0

你不應該使用自動調整大小面具更多地除外在傳統應用程序中,甚至在那裏,你應該真正將它們更新爲自動佈局。 –

+0

@DuncanC我不同意。有各種工具可用。使用在特定情況下有效的工具。自動調整掩碼沒有任何問題。 – rmaddy

+0

@jape你需要澄清你的意思是「不起作用」。並提供有關如何創建和設置按鈕的更多細節。把所有這些信息放到你的問題中,而不是在評論中。 – rmaddy

回答

0

當包含按鈕的視圖改變大小時,按鈕的autoResizeMask會影響按鈕的大小。它不會影響按鈕內的內容。 (我認爲需要的默認設置將縮小圖像,而不是展開它。)從這個

嘗試代碼,以便回答:How do I scale a UIButton's imageView?

buttonTop.contentHorizontalAlignment = UIControlContentHorizontalAlignmentFill; 
+0

沒有工作:(但謝謝你! – jape