我正在使用UIView
值轮换UISLider
。如果滑块值增加或减少,则根据旋转发生。我的代码工作正常。
轮换操作:
@IBAction func sliderToolAction(sender: UISlider) {
if sender.tag == 1
{
let radians = CGFloat(sender.value) * 22 / (7 * 180)
rotatingView.transform = CGAffineTransformMakeRotation(radians)
}
}
输出:
Rotating Frame: (100, 20, 103.9990, 127.8889)
在轮播UIView
之后,我尝试增加该视图的width
和height
,它无效。
调整行动
@IBAction func sliderToolAction(sender: UISlider) {
if sender.tag == 2
{
rotatingView.frame.size.width = CGFloat(sender.value) * viewWidth
rotatingView.frame.size.height = CGFloat(sender.value) * viewHeight
}
}
输出:
Rotating Frame: (80, 40, 207.8888, 255.6667) //ATTEMPT 1
Rotating Frame: (50, 60, 207.8888, 255.6667) //ATTEMPT 2
Rotating Frame: (20, 90, 207.8888, 255.6667) //ATTEMPT 3
Rotating Frame: (-10, 120, 207.8888, 255.6667) //ATTEMPT 4
我正在增加宽度和高度,但是UIView的位置正在移出屏幕。请指导我。
答案 0 :(得分:1)
警告强>
如果transform属性不是identity变换,则值为 此属性未定义,因此应忽略。
和
可以设置对此属性的更改。但是,如果改造 property包含一个非标识变换,即帧的值 属性未定义,不应修改。在那种情况下,你 可以使用center属性重新定位视图并调整大小 使用bounds属性。
不改变帧大小,而是更改边界大小。