我是新手,我搜索过不同的地方,实际上找不到任何有用的东西。
在这种情况下,我按下按钮时从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弱变量按钮:UIButton!和@IBAction在同一个按钮??好吧,我试过并创造了两个
@IBOutlet weak var button: UIButton!
和
@IBAction func chooseImage(_ sender: Any) {
button.imageView.image = image
}
但没有任何反应可能听起来令人困惑,但有两个问题。有可能这样做吗?如果是的话,为什么在拍照时不会显示照片
button.imageView.image = image?
如果没有请告诉我我做错了什么:-)
谢谢!
someButton.setImage(imagenew, for: .normal)
UIButton有一种setimage方法。您还可以将图像设置为背景图像。有一种叫做setbackgroundImage
的方法。
试试这个
button.setImage(image, for: .normal) // Swift 3
使用setImage()方法设置按钮的前景图像。但是,如果你的按钮都是蓝色的,那是因为你应该知道有一个叫做“渲染模式”的图像功能,请参考Template Images获取更多信息:
button.setImage(image.withRenderingMode(.alwaysOriginal), for: .normal)