0
내 응용 프로그램에서는 사용자가 몇 가지 세부 정보를 입력해야하며 레이블을 사용하여 다른보기를 통해 표시됩니다. 레이블이 처음 고정 된 길이와 폭 있었을 때 사용자가 텍스트의 가변 길이를 입력 할 수 있습니다으로라벨의 크기를 조정하고 변형하는 방법은 무엇입니까?
는, 내가 좋아하는 코드를 사용하는 라벨의 크기를 조정하려면 다음과 같이 이러한 수정을
CGSize maximumLabelSize = CGSizeMake(296,9999);
CGSize expectedLabelSize = [yourString sizeWithFont:yourLabel.font
constrainedToSize:maximumLabelSize
lineBreakMode:yourLabel.lineBreakMode];
//adjust the label the the new height.
CGRect newFrame = yourLabel.frame;
newFrame.size.height = expectedLabelSize.height;
yourLabel.frame = newFrame;
문제를 나는 많은 라벨을 하나씩 가지고있다. 따라서 한 레이블의 길이를 변경하면 다음 레이블도 모두 새 위치로 변형/이동해야합니다.
모든 레이블의 크기와 위치를 동적으로 변경할 수있는 방법이 있습니까? 그렇지만 최종 프레젠테이션이 고정 길이 레이블의 경우와 같은 수준으로 유지되도록하려면 어떻게해야합니까?
모든 레이블의 높이를 동적으로 관리해야합니다. 마찬가지로 int 변수를 취합니다 'h'초기 값을 'yourLabel.frame.size.origin.y'와 같이 부여합니다 ... 그 후 h = h + expectedLabelSize.height ...이 h 값을 다음 레이블의 y 위치에 지정합니다. –