ios - 根据屏幕尺寸平移/缩放 UIImageView

标签 ios swift uiimageview

我有一个空白矩形uiview,它根据设备屏幕尺寸动态调整大小。

uiview 中,我以编程方式插入 uiimageview subviews,然后保存 CGRectCGPoint CGAffineTransform 数据到我的数据库。

然后我可以获取此数据并重新上传并查看我之前插入的 uiimageview

如果我有相同的设备屏幕尺寸,一切都很好,但我的问题是尝试将这些保存的数据点适应其他屏幕尺寸,这样无论您使用什么 iOS 设备,它在视觉上看起来都很好上。

我尝试将屏幕的原始高度和宽度与其他数据点一起存储,这样我就可以找到原始宽度的变化,以调整原始 x 坐标以移动更多或更少的点。

let widthPointChange = new.bounds.width - saved.originalSuperviewWidth
let heightPointChange = new.bounds.height - saved.originalSuperviewHeight
 newUIImageView.center = CGPoint(x: saved.x + widthPointChange, y: saved.y + heightPointChange)

是否有更好的方法来根据不同的屏幕尺寸进行翻译/缩放,但又保持原样?例如,我想知道 Instagram 如何能够保存用户生成的故事并在不同设备尺寸上一致且按比例地显示它们。

最佳答案

试试这个方法!

let view = UIView()
let image = UIImageView()

image.translatesAutoresizingMaskIntoConstraints = false
view.leftAnchor.constraint(equalTo: view.leftAnchor).isActive = true
view.topAnchor.constraint(equalTo: view.topAnchor).isActive = true
view.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true
view.rightAnchor.constraint(equalTo: view.rightAnchor).isActive = true

view.addSubview(image)

关于ios - 根据屏幕尺寸平移/缩放 UIImageView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56252623/

相关文章:

performance - 带有大 UIImageView 的自定义 UITableViewCell 导致滚动延迟

ios - 通过_property样式捕获属性值导致retain循环

ios - 在 Swift 中将 12 小时 UTC 日期转换为 24 小时本地时区格式

ios - 如何通过GCDWebServer在iOS上播放本地M3u8文件

ios - 如何在 swift 中使用 NSFont?

swift - 劫持后退按钮 - 无法继续 - Swift

IOS 图像约束在设备中无法正常工作

ios - 圆形框架 iOS 中的图像

ios - 为什么来自 xib 的 VC 的 view init 的框架不是 MainScreen 的大小?

ios - 通过 URL 将 ePub 图书加载到 iPad 上的 iBook