以编程方式设置 UIButton 的背景不起作用
Setting the background of an UIButton programmatically not working
我只是想简单地设置按钮的背景图像,但无论我尝试什么,都无济于事。我还在那里放了一个 UIImageView
以查看图像文件是否有任何问题,但图像视图设置得非常好。我必须在按钮的属性中设置一些东西吗?
这里是代码:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let imageToSet = UIImage(named: "3-1")
b1.setBackgroundImage(imageToSet, for: .normal)
imageView.image = imageToSet
}
@IBOutlet weak var b1: UIButton!
@IBOutlet weak var imageView: UIImageView!
}
这些是我对按钮的设置:
在Xcode13中,UIButton
有四种类型Plain,Grain,Tinted,Filled
。当你在故事板中创建一个按钮时,按钮类型自动设置为Plain
,这意味着新的UIButton配置已打开(如果您设置其中之一 4)。因此,当您尝试使用像
这样的旧行为时
setBackgroundImage(..)
setImage(..)
这个功能不会影响这个按钮。所以如果你想使用旧的行为,你需要将样式 Plain
设置为 Default
我只是想简单地设置按钮的背景图像,但无论我尝试什么,都无济于事。我还在那里放了一个 UIImageView
以查看图像文件是否有任何问题,但图像视图设置得非常好。我必须在按钮的属性中设置一些东西吗?
这里是代码:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let imageToSet = UIImage(named: "3-1")
b1.setBackgroundImage(imageToSet, for: .normal)
imageView.image = imageToSet
}
@IBOutlet weak var b1: UIButton!
@IBOutlet weak var imageView: UIImageView!
}
这些是我对按钮的设置:
在Xcode13中,UIButton
有四种类型Plain,Grain,Tinted,Filled
。当你在故事板中创建一个按钮时,按钮类型自动设置为Plain
,这意味着新的UIButton配置已打开(如果您设置其中之一 4)。因此,当您尝试使用像
setBackgroundImage(..)
setImage(..)
这个功能不会影响这个按钮。所以如果你想使用旧的行为,你需要将样式 Plain
设置为 Default