如何通过编程改变使用Interface Builder创建的UIImageView中图像的高度/宽度



代码如下:

  class ViewController: UIViewController {
 @IBOutlet weak var border: UIImageView!

  override func viewDidLoad() {
    super.viewDidLoad()

    let width = UIScreen.mainScreen().bounds.width
    let height = UIScreen.mainScreen().bounds.height

    border.image?.size.width = width
    border.image?.size.height = height
    }

但是我得到一个错误说:

不能赋值给property: size是一个只能获取的属性

你不能这样改变UIImage对象的大小。但是你可以改变UIImageView对象的大小。

所以你的代码应该是:
border.frame?.size.width = width
border.frame?.size.height = height

然后设置你的UIImageView的contentMode适当的,如果你想要它填充比例/方面适合等

如果你想改变UIImage对象的大小,那么你需要使用CoreGraphics重新绘制它。

在这种情况下,我建议您更改imageview的大小。更改图像的大小是可能的,但在几乎所有情况下,更改imageview的大小是可行的方法。

最新更新