2017-05-10 2 views
0
import UIKit 
import Material 

class MyVC: UITableViewController { 
    fileprivate var deleteButton: IconButton! 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     prepareDeleteButton() 

     navigationItem.rightViews = [deleteButton] 
    } 
    // other delegates of UITableView 
} 

extension MyVC { 
    fileprivate func prepareDeleteButton() { 
     deleteButton = IconButton(image: UIImage(named: "Trash")) 
     deleteButton.tintColor = Color.red.base 
     deleteButton.addTarget(self, action: #selector(doSomething), for: .touchUpInside) 
    } 

    @objc 
    fileprivate func doSomething() { 
     print("delete accessory") 
    } 
} 

하는 것으로 제목 표시 줄 버튼의 색조 색상 변경하는 방법에 대해 설명합니다.우주의 마음 - <code>MyVC</code> 다른 <code>ViewController</code>에서 밀려

MyVC에서 휴지통 아이콘이 화면의 오른쪽 상단 모서리에있는 navigationItem.rightViews = [deleteButton]이고 빨간색 기본 색이 deleteButton.tintColor = Color.red.base 인 것으로 표시하고 싶습니다.

위의 코드에서 작동하지 않지만 휴지통이 여전히 검은 색입니다. 색조 색상을 변경하려면 어떻게해야합니까?

내 쓰레기 아이콘이 Cosmic Mind 아이콘 (24x24 @ 1x)과 같은 크기이지만 동일한 rightViews의 다른 Cosmic Mind 아이콘보다 약간 큰 것 같습니다. 사실입니까? 그것을 조금 작게 만드는 방법?

감사합니다,

답변

1

코드와 문제는 올바른 렌더링 모드를 사용하지 않는 것입니다. 사용해보기 :

deleteButton = IconButton(image: UIImage(named: "Trash")!.withRenderingMode(.alwaysOriginal)) 

모두 최고!

+0

또 다른 트릭은 'xcassets'에서 해당 이미지를 선택한 다음'속성 검사기 '의'렌더링 이름 '에서'템플릿 이미지 '를 선택하여 설정하는 것입니다. 힌트를 가져 주셔서 감사합니다. – quanguyen

관련 문제