ios 图片旋转 放大,缩小,平移实现方法
point_me
ios课程 第二个实验
点我啊 swift 4.0
功能
图片循环播放,暂停播放 上下左右平移,旋转 通过slide来旋转图片 动作的动画效果
功能解释
上下平移
通过center来上下平移
如果通过origin.x来平移
图形在旋转是会发生变化
放大和缩小
通过bounds.size.height 和bounds.size。width来放大和缩小 不然旋转时会改变大小
imageview建立一个imageview 在目录下建立个image文件夹,放入图片
let imgarr=[uiimage(named: "1_13.jpg")!, uiimage(named: "1_31.jpg")!, uiimage(named: "imag.jpg")!, ] ``` 可以设置轮播 ## 图片旋转 - let rad=20/180*float(double.pi) myimageview.transform=cgaffinetransform(rotationangle: cgfloat(rad)) - 连续旋转 let rad=20/180*float(double.pi) myimageview.transform=myimageview.transform.rotated(by: cgfloat(rad)) - 按照周期不停旋转
let rotationanim = cabasicanimation(keypath: “transform.rotation.z”)
// // 2.设置动画的属性
// rotationanim.fromvalue = 0
// rotationanim.tovalue = m_pi * 2
// rotationanim.repeatcount = maxfloat
// rotationanim.duration = 1
// // 这个属性很重要 如果不设置当页面运行到后台再次进入该页面的时候 动画会停止
// rotationanim.isremovedoncompletion = false
// // 3.将动画添加到layer中
// myimageview.layer.add(rotationanim, forkey: nil)
### button 使用tag 向button传值
button1.addtarget(self, action: #selector(viewcontroller.play(sender:)), for: .touchupinside)
@objc func play(sender:uibutton) {
// tag==0 start
if sender.tag==0{
myimageview.startanimating()
}
}
## slider
myslider=uislider(frame: cgrect(x:20, y:380, width: 300, height: 20))
myslider.addtarget(self, action: #selector(valuechanged(_sender:)), for:uicontrolevents.valuechanged)
myslider.minimumvalue=0
myslider.maximumvalue=180
“`