【发布时间】:2015-09-24 10:26:12
【问题描述】:
我一直在尝试更改进度视图的大小和旋转以适应屏幕大小。它基本上可以在手机屏幕上产生填充玻璃效果。
我通过使用相当无害地旋转了它
self.masteryProgress.transform = CGAffineTransformMakeRotation((CGFloat(-90) / CGFloat(180.0) * CGFloat(M_PI)))
我使用view.bounds 获得了包围屏幕的视图大小,试图获取矩形和宽度x 高度。所以我没有被困在那里。
我尝试使用 .frame .drawRect,但是当我使用它们时,它要么破坏它们,要么什么都不做。
在 interfaceBuilder 中,height 属性似乎被锁定为恒定值 2。
在我构建自定义动画之前有什么解决方案吗?
我尝试像其他帖子所说的那样在 interfaceBuilder 中设置进度条的高度,但是无论在什么设备上运行,我都需要让进度视图填满整个屏幕,这样解决方案在我的情况下不起作用。
我最终使用
CGAffineTransformScale(masteryProgress.transform, view.bounds.height / 1334, (view.bounds.width / 2))
由于我正在垂直旋转 progressView,我将进度视图设置为宽度 1334(iPhone 6 Plus 的高度)和高度 2。通过将屏幕高度除以这些值,它应该调整大小完美连接任何手机。
【问题讨论】:
-
请检查上一个问题。自动布局方式也可以应用在storyboard中。
-
@WonjugKim 这很好,但我需要它来调整屏幕大小,界面生成器只能让你静态调整大小。
标签: swift uiprogressview