2017-11-01 5 views
2

UIBarButtonItem의 색상을 변경하려고 하루 종일 보냈습니다. 이제는 설계 상 나에게 말할 수없는 한 iOS 11 버그라고 생각합니다.setTitleTextAttributes가 화면보기 후에 작동하지 않습니다. iOS 11

난 당신이 viewDidAppear:animated에 추가하는 경우, 그러나 그것은 작동하지 않습니다, 나는 그것이 잘 작동 viewWillAppear:animated 함수에 코드를 추가하는 경우이 코드

[self.refreshButton setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor orangeColor]} forState:UIControlStateNormal]; 

를 사용하여 텍스트의 색상을 변경할 수 있습니다.

아이폰 OS 9 시뮬레이터 작동하는 것 같다

있지만 아이폰 OS (11)

뭔가는 아이폰 OS (11)이 점에서 변화 했습니까?

+0

'viewWillAppear : animated'에서 UI를 변경할 때 약간의 문제가 있습니다. 나는 약간의 지연과 함께'dispatch_after'에 코드를 넣는 것이 문제를 해결할 것이라고 생각한다;) – trungduc

+0

나는 그것을 시도했지만 여전히 작동하지 않았을 것이라 확신한다. 다시 시도 할게. – Darren

+0

아니요, 1 초의 지연 후에도 주사위가 없습니다. – Darren

답변

2

UIBarButtonItem의 제목 색을 변경하려는 경우 setTitleTextAttributes: 대신 tintColor 속성을 설정할 수 있습니다. UIBarButtonItems에 동일한 제목 색상을 지정하려면 도구/탐색 모음의 tintColor을 설정할 수 있습니다.

+2

'setTintColor :'잘 작동합니다. Apple에'setTitleTextAttributes :' – Darren

+0

'UINavigationBar.appearance(). tintColor'가 트릭을주었습니다. – SoftDesigner

관련 문제