2016-08-03 8 views
0

내 레이블 크기가 W= 190 H =322과 라벨의 텍스트 내가 UILabel의UILabel의 텍스트 라인의 프레임을 얻을 때 센터

에서 텍스트 프레임의 라인의 오렌지 상자 문자를 원하는 enter image description here

처럼 중앙 정렬에있는 텍스트 정렬

+1

은 내 자신의 저택과 충분한 돈은 내가 원하는 무엇이든 할 수 있습니다. 나는 어떤 노력을 기울이지 않으면 어떤 것도 얻지 못할 것입니다. 당신이 당신의 문제와 똑같이하는 것이 좋습니다. 당신이 원하는 것을 말하기보다는 문제를 시도하고, 여전히 문제가 있다면 돌아와서 당신이 시도한 것을 보여주십시오. – Takarii

답변

0

당신의 UILabel의 프레임은 내가 그 내용과 같은 크기 여야합니다. 포장. 자동 레이아웃없이

: 이 당신이 그것을하는 방법이다

당신은 텍스트 크기로 축소 UILabel의에 sizeToFit를 호출 한 다음 I'ts 프레임을 확인해야합니다. 자동 레이아웃으로

textLabel.text = "@yourText"; 
textLabel.numberOfLines = 1; 
[textLabel sizeToFit]; 
CGSize size = CGSizeMake(textLabel.frame.size.width, textLabel.frame.size.height); 

:

그냥 0 "numberOfLines"로 설정하고, 라벨을 폭 제약을주지 않으며, 라벨의 크기가 자동으로 맞습니다.

편집

코어 텍스트 : 나는 페라리를 원하는

UILabel *label = [[UILabel alloc] initWithFrame:frame]; 
label.text = @"Your text"; 
float yourFontSize = 20; 
while ([label.text sizeWithAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:yourFontSize]}].width > modifierFrame.size.width) 
{ 
    yourFontSize--; 
} 
label.font = [UIFont systemFontOfSize:yourFontSize]; 
+0

CoreText Framework 또는 Textkit @PiratM을 사용하는 방법 – Keyur

+0

@KeyurAspiration 내 편집했습니다. Answer – MCMatan

+0

@KeyurAspiration이이 작품을 당신을 위해 만들었습니까? – MCMatan