ビューに配置したボタンに、
この画像をセットしたのですが、実際にプログラムを動かしたところ、
このようになってしまい、うまく表示されません。
なぜこうなってしまうのか、心当たりとしてはこの下にあるviewに透過度を指定したからその影響を受けているのかと考えたのですが、透過度の指定をやめても変わらず・・・
コードの影響以外に、ボタンに画像をセットする過程でこういった状態になってしまう要因はあるのでしょうか?
自分で書いたコードが原因でしたら自分で調べますが、それ以外に、例えば「サイズが大きすぎるとこうなることがある」といったようなコード以外の一般的な要因があれば教えて欲しいです。
追記:みなさんアドバイスありがとうございます、ここまで教えていただいたのに直らないということは、おそらくは上記の他のUI(viewなど)の透過度設定の影響の可能性がやはり高いと思うので、もう一度見直してみようと思います。
けれど、この青色はおそらくUIButtonのテキストの基本色と同じだと思うので、UIButtonの持つ何かしらの要素が原因に関係しているのかなぁ・・・・と、素人の考えですが思いついたので、そちらも検証してみようかと思います。
追記2:透過度の設定をやめてみたり、別のボタンに画像を設定してみたり、pngをjpgに変えてみたり、ボタンのテキストカラーを変えてみたりしてみたのですが、変わりませんでした・・・画像を変更しても、同じように青くなります。ただ、形だけは元の画像データと同じ形になっているようです。
全く新しいViewにボタンを作り画像を設定してみましたが、今までと同じように青くなりました。
変更した後のコードは以下の通りです。
swift
1camera = UIButton(type: UIButtonType.system) 2 camera.frame = CGRect(x: width/2+width/18, y: height/1.5, width: width/3, height: height/7); 3 let cimage:UIImage = UIImage(named:"button")! 4 camera.setImage(cimage, for: .normal) 5 camera.addTarget(self, action: #selector(SecondViewController.cameraOn), for: .touchUpInside) 6
回答3件
あなたの回答
tips
プレビュー