2017-02-17 2 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가 단추의 크기에 영향을줍니다. 단추 안의 내용에는 영향을주지 않습니다. (그리고 필요에 따라 기본 설정은 이미지를 축소 할 생각하지만, 그것을 확장하지.)이에서

try 코드는 SO 답변 : How do I scale a UIButton's imageView?

buttonTop.contentHorizontalAlignment = UIControlContentHorizontalAlignmentFill; 
+0

작동하지 않았 음 :(감사하지만! – jape

관련 문제