2012-03-24 7 views
0

보기의 중간에 텍스트를 그릴 필요가 있습니다. 텍스트는 1 자 또는 몇 자 일 수 있습니다. - (void)drawRect:(CGRect)rect 방법으로 텍스트를 그립니다.보기 중간에 텍스트를 그립니다.

내가 원했던 것은 텍스트가 수평 및 수직 가운데에 배치된다는 것입니다 (나는 그 방법을 알고 있습니다). BUT 문자 길이에 따라 글꼴 크기를 업데이트하려면

"S"와 같은 문자열은 90 포인트 글꼴 크기로 그려 지지만 "hello world"는 30 포인트 글꼴 크기로 그려집니다.

어떤 아이디어?

답변

1

UILabel은 세로 및 가로 가운데에 사용할 수 있습니다. adjustsFontSizeToFitWidth을 사용하면 레이블 너비에 맞게 텍스트를 축소 할 수도 있습니다.

label.adjustsFontSizeToFitWidth = YES; 
label.minimumFontSize = 10.0; // or whatever... 

크기를 더 제어해야하는 경우 나 자신을 배치해야한다고 생각합니다. NSString에서 sizeWithFont: 및메시지를 사용하여 문자열의 크기를 특정 글꼴로 얻은 다음 사용할 크기와 그리기 위치를 파악할 수 있습니다. the documentation을 참조하십시오.

관련 문제