MFMailComposeViewController
클래스와 같이 OS에서 제공하는 UI 요소를 사용하지 않는 경우 모양 프록시가 유용합니다. 이러한 이유로 탐색 바의 바 버튼 항목을 사용자 정의해야하는데, 뒤로 버튼입니다.특정 뒤로 버튼의 제목 속성 사용자 정의
무엇이 문제인가? 뒤로 버튼의 제목 속성을 수정할 때 문제가되는 것 같습니다. 꽤 많은 비트가 customizing the back button에 대해 작성되었지만, 외관 버튼 (: 외관 프록시 사용하지 않고)의 제목 속성 (텍스트 색상, 그림자 색상 등)을 수정하는 방법에 대한 정보를 찾지 못하는 것 같습니다.
무엇을 시도 했습니까? 아래와 같이 backBarButtonItem
속성의 제목 속성을 설정하십시오. 자식 또는 부모보기 컨트롤러에서이 작업을 수행하는 것은 중요하지 않습니다. 이것은 leftBarButtonItem
과`rightBarButtonItem '항목에서 잘 작동하는데, 이는 나 혼란 스럽습니다. 물론
[self.navigationItem.backBarButtonItem setTitleTextAttributes:titleAttributes forState:UIControlStateNormal];
는 외관 프록시를 사용하는 것은 (아래 참조)뿐만 아니라 잘 동작하지만, 상술 한 바와 같이, 이것은 OS가 제공하는 내비게이션 바 엉망.
[[UIBarButtonItem appearance] setTitleTextAttributes:titleAttributes forState:UIControlStateNormal];
문제는의'backBarButtonItem' 속성 자체가'nil'입니다! 따라서 메시지를 전달해도 아무런 효과가 없습니다. @ βhargavḯ가 지적했듯이, 이것은 문서와 일치합니다. 그래서, 'appearance' API를 사용하지 않고, 코드에서 원하는 커스터마이징을 가진'UIBarButtonItem' 인스턴스를 생성하고 대신 뒤로 버튼으로 설정할 수 있습니다. – trss