0
imageViewからイメージをカラー化したい。その後、私はこのイメージをボタンに設定したいと思っています。イメージをカラー化し、間違ったカラースウィフトを取る
let imageView:UIImageView = UIImageView()
if let myImage = UIImage(named: "ic_star") {
let tintableImage = myImage.imageWithRenderingMode(.AlwaysTemplate)
imageView.image = tintableImage
}
imageView.tintColor = UIColor.redColor()
bestListButton.setImage(imageView.image, forState: .Normal)
これは機能するはずのスニペットですが、私のボタン画像は常に青で色付けされています。 デバッガは、色が変わらないと言っています。シミュレータはそれを青色に変更します。
EDITと(ハック)ソリューション さて、それはかなり奇妙です。青は、私のインターフェースビルダーがtintColor blueだったからです。 私はそれを白に変更しました。今私の星は白です。
しかし、コードを削除すると、画像が黒に戻ります。だから、色の変化はインターフェイスビルダーとコードとの組み合わせでうまくいくように思えます。
EDIT 2 プログラムソリューション: bestListButton.tintColor = UIColor.redColor()
ええそうです。私のイメージはGoogleマテリアルデザインの公式ギリシコンです。 imageViewが空であるか、空ではないが画像がないため、コードでエラーが発生します。 – kuzdu