2013-10-08 4 views
2

아이폰 OS 6, 엑스 코드 4, 난이 있었다 : 쉽게 엑스 코드 5를 사용하여 아이폰 OS 6 SDK와 함께 내장 된 응용 프로그램과 함께, 코드특정 UIBarButtonItem을 어떻게 색칠 할 수 있습니까?

[editButton setTintColor:[UIColor theGreenColor]; 

그러나 아이폰 OS 7 전화로 만들어진 https://dl.dropboxusercontent.com/u/60718318/photo.PNG , 이 똑같은 코드를 사용하여 편집 버튼의 색조가 해제됩니다. (최대 두 개의 이미지 만 게시 할 수 있으므로 편집 버튼이 뒤로 버튼과 같은 색상이라고 상상해보십시오.) 많은 사람들이 여기에서 SO와 인터넷에있는 모든 사람들이 지금 버튼에 색을 입힐 수있는 유일한 방법은

self.navigationController.navigationBar.tintColor = [UIColor theGreenColor]; 

WWDC 세션에서도 참조됩니다. 그러나, 이와 같은 것을 시도 할 때, 나는 단지 다음과 같은 것을 얻습니다 : https://dl.dropboxusercontent.com/u/60718318/photo-2.PNG 이것은 정확하지 않습니다. 그리고 WWDC 세션에 따르면,이 버튼은 단지 1 개가 아닌 양쪽 버튼에 색을 칠하기로되어 있습니다. xcode 4의 iOS 6 에서처럼 1 개의 버튼을 어떻게 색칠 할 수 있습니까?

+0

당신이해야 할이 자기를 시도 것을 떠나 .navigationController.navigationItem.rightBarButtonItem.tintColor = [UICOlor thrGreenColor] ? –

+0

버튼이 iOS7에있는 일반 텍스트 버튼이기 때문에 iOS7과 동일한 모양과 느낌의 iOS7을 사용하고 계십니까? 버튼에 배경 이미지를 사용하고 있습니까? – AC1

+0

@Kunal 이미 rightBarButtonItem을 설정하려고했지만 작동하지 않았습니다. – Jegus

답변

1

나는 이것이 더 이상 가능하지 않다고 생각한다. 나는 애플이 정당하게 아무런 이유없이 기능을 완전히 삭제했다고 생각한다. 아무도이 질문을보고 어떻게 우회하는지 궁금하면 이전 버튼 사진을 찍어 새 버튼의 이미지로 사용했습니다.

1

확실히 당신이 말한 기능은 분명히 매우 드물기 때문입니다. 트릭은 항목에 직접 적용하는 대신 UIBarButtonItemUIButton을 수정하는 것입니다. 을 heres의 ViewController의 순진 구현은 구현이

당연히
class ViewController: UIViewController { 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     navigationItem.rightBarButtonItem = createBarButtonItem() 
    } 

    func createBarButtonItem() -> UIBarButtonItem { 
     let button = UIButton(frame: CGRect(origin: CGPointZero, size: CGSize(width: 44, height: 44))) 
     button.setTitle("Press Me", forState: .Normal) 
     button.addTarget(self, action: "handleButtonTap:", forControlEvents: .TouchUpInside) 
     button.tintColor = UIColor.blueColor() 
     let buttonItem = UIBarButtonItem(customView: button) 
     return buttonItem 
    } 

    func handleButtonTap(button: UIButton) { 
     button.tintColor = UIColor.redColor() 
    } 
} 

당신이 색상을 전환 할 수 있도록 버튼 선택의 상태를 관리 할 것이지만, 최대

관련 문제