【发布时间】:2019-02-02 16:51:28
【问题描述】:
在下面的例子中我提到了
-view(我将在两个 iPad 上显示的 UIView)。
-parentView(与 iPad 分辨率相同的容器 UIView)。
-parentViewOfIPadInWhichViewHasMade : 这是已保存视图的 iPad 的父视图。这将在不同 iPad 中显示视图时使用。
功能是我在 iPad mini 中保存视图并保存它将其框架信息存储在服务器上,当从 iPad pro 打开应用程序时,它将从服务器获取这些数据并在 iPad pro 中显示视图。
如果视图已调整为 iPad Pro 的全屏并从 iPad Mini 获取,这是我的预期输出
iPad Pro 12.9 英寸:
-
view.size(x:-25.0,y:-25.0,宽度:1416.0,高度:874.0) -
parentView.size(x : 0.0, y : 0.0, width : 1366.0, height : 824.0)
iPad 迷你版:
-
view.size: (x : -25.0,y : -25.0, 宽度 : 1074.0, 高度 : 618.0) -
parentView.size: (x : 0.0, y : 0.0, width : 1024.0, height : 568.0)
为了得到这个,我在视图中写了下面的代码。
viewX = parentView.frame.width * view.origin.x / parentViewOfIPadInWhichViewHasMade!.width
viewY = parentView.frame.height * view!.origin.y / parentViewOfIPadInWhichViewHasMade!.height
viewWidth = parentView.frame.width * view!.frame.width / parentViewOfIPadInWhichViewHasMade!.width
viewHeight = parentView.frame.height * view!.frame.height / parentViewOfIPadInWhichViewHasMade!.height
注意:无法固定视图大小或使用约束。
【问题讨论】:
-
设置要显示的视图的静态宽度和高度与所有 ipad 相同,并将该视图的中心设置为父视图的中心
-
该视图可以调整大小并在 iPad 屏幕的任何位置移动。所以无法解决任何问题。
-
为什么不能使用约束?这正是你所需要的......
-
因为用户可以在屏幕中的任何位置移动视图,并且我正在从代码中的按钮添加视图,并且首先没有添加任何约束。 @J.Doe。
-
@Venkadesh 非常感谢您的建议............非常感谢
标签: ios swift ipad uiview frame