我刚刚意识到一些很奇怪的事情。使用 Xcode 5 中的故事板,我创建了一个非常简单的应用程序;只有一个视图的视图控制器。在此视图上有滑块和两个图像。当我移动滑块时,我希望一个图像缩放而另一个图像移动。我将控件连接到视图控制器
测试视图控制器.h:
@interface TestViewController : UIViewController
@property (weak, nonatomic) IBOutlet UIImageView *scaleImage;
@property (weak, nonatomic) IBOutlet UIImageView *moveImage;
- (IBAction)sliderChanged:(UISlider *)sender;
@end
并在 TestViewController.m 中实现 sliderChanged:
- (IBAction)sliderChanged:(UISlider *)sender {
self.scaleImage.transform = CGAffineTransformMakeScale([sender value], [sender value]);
CGRect targetFrame = self.moveImage.frame;
targetFrame.origin = CGPointMake(targetFrame.origin.x + (100 * [sender value]) - 50, targetFrame.origin.y);
self.moveImage.frame = targetFrame;
}
现在是奇怪的部分。当我拖动滑块时,缩放图像被正确缩放,但移动图像直到我释放滑块(即停止拖动)才移动。变换是否以某种方式阻塞了绘制调用?