ios - 如何立即移动 CALayer(无动画)

我正在尝试在 iOS 应用中拖动 CALayer

一旦我改变了它的位置属性,它就会尝试动画到新的位置并在整个地方闪烁:

 layer.position = CGPointMake(x, y)

如何立即移动 CALayers?我似乎无法理解 Core Animation API。

最佳答案

您希望将您的通话包装在以下内容中:

[CATransaction begin]; 
[CATransaction setValue: (id) kCFBooleanTrue forKey: kCATransactionDisableActions];
layer.position = CGPointMake(x, y);
[CATransaction commit];

https://stackoverflow.com/questions/226354/

相关文章:

ios - UITextView 从文本的底部或中间开始

objective-c - 加载 UIPickerView 后选择行

ios - UICollectionView中的左对齐单元格

ios - 检查 key 是否存在于 NSDictionary 中

iphone - 如何进行键值观察并在 UIView 的框架上获取 KVO 回调?

objective-c - 在 Iphone UIImageView 中添加动画 Gif 图像

ios - UITableView 背景颜色在 iPad 上总是白色

objective-c - 在 iOS 8 应用程序中隐藏状态栏

iphone - Objective C HTML 转义/取消转义

iphone - 在 Xcode 4 中将静态库链接到 iOS 项目