2017-05-06 7 views
0

私は早急に新しいです。私は別の場所を検索していて、役に立たないものは実際に見つけることができませんでした。ボタンで画像を設定するには

私はボタンを押したときに、私はUIImagePickerControllerから画像を選んで、この場合には午前:作品と私はフォトライブラリにアクセスし、画像を選択することができますが、

@IBAction func chooseImage(_ sender: Any){} 

.. 事がということです私はそれをボタン画像に設定したい。 私は、画像を保存します。私はそれを行う方法を言うことであると考えてい

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) 
{ 
    let image = info[UIImagePickerControllerOriginalImage] as! UIImage 

    // this works with an UIimageView.image but I can't get it to work with the button 

    ???.image = image 

button.ImageView.image = imageこれは、UIButtonという変数を作成することによってのみ実行できます。 そして私は

button.ImageView.image = image 

がそうでなければ、私はこの方法ImageView.image

を入力することはできません設定することができます。しかし事はchooseImageは、私は、画像を受信する作用のために使用するのと同じボタンがあるということです...だからすることができます私は@IBOutlet弱いvarボタンを作る:UIButton!同じボタンで@IBAction? さて、私が試したし、作成した

@IBOutlet weak var button: UIButton! 

@IBAction func chooseImage(_ sender: Any) { 

button.imageView.image = image 
} 

両方をが、何もそれは混乱に聞こえるかもしれないが起こっていないが、二つの疑問があります。このようにすることは可能ですか?はいあれば、

button.imageView.image = image? 

をやったときに、なぜ写真が示されていないと私に教えてくださいされていない場合、間違った:-)

感謝をやって何イム!

答えて

1
someButton.setImage(imagenew, for: .normal) 

を試してみてください。イメージを背景イメージとして設定することもできます。 setbackgroundImageというメソッドがあります。

+0

はい、どうすればsetImageにアクセスできますか? @IBOutlet weak varボタンを作成することはできますか?UIButton! と IBAction func chooseImage(送信者:任意){ は同じボタンにありますか? – StrawHat

+0

@StrawHatはい、コンセントとアクションの両方を作成することができます – Scriptable

+0

ありがとうございます!私はやってみましたが、画像を選んだところ、ややうまくいきました。それはすべて青色を示す...(ボタンイメージ)??それは正しい画像を設定しないでください – StrawHat

0

はUIButtonのためsetimage方法があり、この

button.setImage(image, for: .normal) // Swift 3 
+0

ESが、どのように私はアクセスもありませんsetImage ?? @IBOutlet弱いvarボタンを作成することはできますか:UIButton! IBAction func chooseImage(_ sender:Any){同じボタンには? – StrawHat

+0

ありがとう!私はやってみましたが、画像を選んだところ、ややうまくいきました。それはすべて青色を示す...(ボタンイメージ)??正しいイメージを設定しないでください – StrawHat

+0

この解決策を確認してください。これが役立ちます。 http://stackoverflow.com/questions/18133465/setting-uibutton-image-results-in-blue-button-in-ios-7 –

0

フォアグラウンド画像ボタンをセットするには、setImage()メソッドを使用してください。あなたのボタンがすべて青である場合に呼び出さ画像「レンダリングモード」の機能を使用すると、より多くの情報のためTemplate Imagesを参照してください、知っておくべきがあるのでしかし、それはです:

button.setImage(image.withRenderingMode(.alwaysOriginal), for: .normal) 
関連する問題