2017-05-05 3 views
1

XOS 8.2, Objective C, Mac OSX, iOS가 아닙니다.NSPopover에서 뷰 제약 조건 업데이트 OSX Objective-C

이 같은 팝 오버에 도시 된 볼이 : 내가 두 번째 NSPopupButton에서 옵션을 선택하면 enter image description here

, 파란색 텍스트는 다른 긴 텍스트로 대체됩니다를 (5 개 라인 대신 3) - 불행하게도보기 변화를 반영하지 않습니다!

enter image description here

내가 NSPopover를 닫았다 경우에만, 뷰가 정확한지 :

enter image description here

뷰가 완전히 자동 레이아웃 및 제약 내장되어 있습니다. 모든 하위 뷰에 대해 HEIGHT 또는 WIDTH를 제한하는 제한이 없으며 거리를 슈퍼 뷰로 설정합니다. 그래서 내 질문에, 어떻게 NSPopupButton에서 선택 후보기를 업데이트 할 수 있습니다. 이미 시도한 (viewController)

[self.view setNeedsLayout:YES]; 

하지만 작동하지 않는 것 같습니다. 나는이 글을 확인하지만 그들은 내 문제를 나에게 도움이되지 않았다 :

Resize current view using NSLayoutConstraints

편집 : (NSPopupButton 선택에)

새로운 텍스트는 다음과 같이 설정됩니다

[self.descriptionTextField setStringValue:self.currentSequenceItem.descriptionText];

답변

0

해결책을 찾았으며 공유하고 싶습니다. 사용자가 설정 한 후에는 모든 제약

[yourTextField setPreferredMaxLayoutWidth:100.0f]; // Whatever you need 

그렇지 않으면 텍스트 필드의 모든 텍스트를 한 라이너 만드는 수평으로 확장하는 경향이 호출해야합니다.

해당 속성이 설정된 경우 세로로 크기가 조정되고 모든 제약 조건이 예상대로 업데이트됩니다.