나는 UIView
의 하위 클래스를 다음 코드 줄을 사용하여 navigationItem
의 titleView
로 추가했습니다.navigationItem.titleView layoutSubviews에 대한 올바른 경계 가져 오기
self.navigationItem.titleView = tempview;
쉽습니다. 그건 잘 작동합니다. 내 문제는이 navigationItem
에는 때로는 rightBarButton
업데이트 (때로는 버튼이 없으며 때로는 하나의 표준 크기 버튼이 있고 때로는 더 큰 버튼이 있음)입니다.
titleView
로 추가 한 tempview
클래스의 layoutSubviews
메서드를 사용하여 다음과 같이 입력 할 수 있습니다.
-(void)layoutSubviews {
[super layoutSubviews];
self.mylabel.frame = self.bounds;
}
이 함수는 작동하지 않습니다. rightBarButton
항목이 업데이트되면 제목보기 크기를 올바르게 조정하십시오.
경계가 더 작아지면 성장하지 않는 것을 눈치 챘는데, 단순히 위치를 변경합니다.
setNeedsLayout
과 layoutIfNeeded
을 사용해 보았습니다.하지만 단순히 잘못된 경계로보기 크기를 "크기 조정"합니다.
또한 rightBarButton
항목이 nil로 설정되어 있는지 확인했지만 뷰가 여전히 축소되면 올바르게 확장되지 않습니다.
어떤 도움을 주셔서 감사합니다!
나는 그것을 시도했지만 'layoutSubviews'접근 방식과 다른 것을 수행하는 것처럼 보이지 않는다. 그래도 고마워! – mjdth