Uilabel의 x, y 좌표를 설정하지만 iPhone에서 자동 너비/높이를 설정하는 가장 좋은 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/929014

  •  06-09-2019
  •  | 
  •  

문제

나는 Uiview에서 Uilabel을 어디에 배치하고 싶은지 정확히 알고 있지만 컴파일 시간에 어떤 높이/너비가 원하는지 알 필요는 없으므로 InitwithFrame에서 너비/높이를 설정하는 것은 쓸모가 없습니다. x, y 포인트를 시작한 다음 [mylabel sizetofit]와 같은 것을 사용하여 중단 모드와 내용에 따라 너비/높이를 자동으로 설정할 수 있습니다.

내가 찾고있는 솔루션은 Uilabel의 원점을 설정하는 동안 너비/높이를 레이블로 설정 한 텍스트를 기준으로 동적 번호로 설정하는 방법입니다.

올바른 솔루션이 없습니다

다른 팁

먼저 레이블 크기를 한 다음 원점이나 중앙을 설정합니다.

[myLabel sizeToFit];
CGRect frame = myLabel.frame;
frame.origin = CGPointMake(x, y);
myLabel.frame = frame;

또는

[myLabel sizeToFit];
myLabel.center = CGPointMake(x, y);

이미 동적 크기를 가진 프레임이 있지만 원점을 변경하려는 경우 :

CGRect myFrame = myLabel.frame;
myFrame.origin = aCGPoint;
myLabel.frame = myFrame;

크기를 계산 해야하는 경우 :

CGSize suggestedSize = [myString sizeWithFont:myLabel.font constrainedToSize:CGSizeMake(FLT_MAX, FLT_MAX) lineBreakMode:UILineBreakModeWordWrap];

물론, FLT_MAX를 변경하여 특정 너비 또는 heigh로 제한 할 수 있습니다.

편집 : 크기를 프로그래밍 방식으로 계산하고 싶다는 것을 몰랐습니다. 위의 더 나은 설명이 추가되었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top