UIImages 不会根据设备大小调整大小

Posted

技术标签:

【中文标题】UIImages 不会根据设备大小调整大小【英文标题】:UIImages will not resize based on device size 【发布时间】:2016-06-17 21:39:42 【问题描述】:

好的,所以我在 UIScrollView 上创建了一个 UIButton,并且我让按钮有一个图像。我的应用程序是通用的,每个设备的按钮大小相同。我希望它根据设备大小更改大小,就像它是具有 3x、2x 和 1x 图像的 SpriteNode 一样。我该怎么做?

    let button = UIButton(type: .Custom)
    let image = UIImage(named:"Buy5Button")
    button.frame = CGRectMake(0, 0, (image?.size.width)!, (image?.size.height)!)
    button.setImage(image, forState: .Normal)
    button.addTarget(self, action: "something", forControlEvents: .TouchUpInside)
    scrollView.addSubview(button)
    self.view?.addSubview(scrollView)

【问题讨论】:

【参考方案1】:

将按钮框架设置为您想要的任何大小(它将自动适应设备分辨率)。然后最终将图像框架设置为与按钮框架相等。

在这种情况下,我倾向于设置按钮的背景图像而不是图像,这样做我只需要定义按钮大小并且背景图像会自动缩放...

【讨论】:

以上是关于UIImages 不会根据设备大小调整大小的主要内容,如果未能解决你的问题,请参考以下文章

如何在颤动中根据父级调整图标大小

Android VideoView 根据每个设备调整大小

添加子视图时,如果应用程序处于横向模式,则视图不会调整大小

Android 4.4 虚拟设备内部存储不会调整大小

如何根据设备屏幕调整 UICollectionViewCell 的大小

根据设备高度在 ScrollView 中动态调整 Nativescript ContentView 的大小