在设置过transform之后,frame就可能不再代表view的真实位置了,这里提供最便捷的两种方法获取正确的frame:
- 使用bounds或者center
- 使用frame:
//1:记录当前transform状态
CGAffineTransform lastTransform = self.transform;
//2:还原transform,保证获取的frame是正确的frame
self.transform = CGAffineTransformIdentity;
//3:改变frame
self.frame = newFrame;
//4:设置回还原之前的transform状态
self.transform = lastTransform;
网友评论