を変更することはできません、と私は意志でその画像の色合い(色)を変更することができますは、私はストーリーボードからそれまでの画像(silhouette.png)を設定し、私は私のナビゲーションバーでUIBarButtonを持ってUIBarButton tintColor
if let num2 = Int(s, radix: 16) { //s="00ff00"
flamingoBtn.tintColor = UIColor(netHex:num2) //this btn is an IBoutlet
}
、これまでのところは良い
はしかし、いくつかの点で私はプログラム的に、別の画像(icon.pngの)ために、元の画像を変更するので、私はこのケースで色合いを変更する必要はありません。
if let url = NSURL(string: "http://www.123di.com/CanonSGLens_132.png") {
if let data = NSData(contentsOfURL: url) {
var newImgThumb : UIImage=UIImage(data: data)!
var iconBtn = UIButton(frame: CGRect(x: 0, y: 0, width: 35, height: 35))
iconBtn.setImage(newImgThumb, forState: UIControlState.Normal)
iconBtn.addTarget(self, action: "goToSettings:", forControlEvents: UIControlEvents.TouchUpInside)
var item = UIBarButtonItem(customView: iconBtn)
self.navigationItem.leftBarButtonItem = item
print("CUSTOM ICON: DOWNLOADED")
}
}
問題アイコンの画像を元のsilhouette.pngに切り替えると、色合いを変更できないのでnger、それはなど、赤、青、常にsilhoute(デフォルトの色)、代わりの緑のまま:
var newImgThumb : UIImage=UIImage(named: "happyface.png")!
var replyBtn = UIButton(frame: CGRect(x: 0, y: 0, width: 35, height: 35))
replyBtn.setImage(newImgThumb, forState: UIControlState.Normal)
replyBtn.addTarget(self, action: "goToSettings:", forControlEvents: UIControlEvents.TouchUpInside)
replyBtn.tintColor = UIColor.greenColor()
var item = UIBarButtonItem(customView: replyBtn)
item.tintColor = UIColor.greenColor()//UIColor(netHex:num2)
self.navigationItem.leftBarButtonItem = item
私が間違って何をやっている、なぜその後igonred色合いが変化しています? 追加の詳細が必要な場合はお知らせください。
ボタンへの参照を保存しようとしましたが、設定して表示されたら、その時点で色合いを変更しましたか? – sschale