gpt4 book ai didi

objective-c - 使用触摸移动事件移动 CALayer

转载 作者:行者123 更新时间:2023-11-28 22:51:33 26 4
gpt4 key购买 nike

我试图用触摸事件移动CALayer。但是有错误信息。

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
// get touched point
CGPoint pt = [[touches anyObject] locationInView:self];
[self.layer convertPoint:pt toLayer:self.layer.superlayer];

// move piece to the point
piece.bounds.origin = pt; <- "Expression is not assignable"
}
}

我已经在寻找这个问题的解决方案,并得出这是 Objective-C 对象的 strucnt 的问题。但是我找不到解决方案。

谢谢你的好意。

最佳答案

是的,它不可分配。 UIView 及其子类也是如此。

我们不能设置 CALayer.bounds.originCALayer.bounds.size 属性。我们可以做的是创建一个 CGRect 并将其分配给 CALayer.boundsCALayer.frame

所以,像这样:

// Use frame, not bounds:
piece.frame = CGRectMake(pt.x, pt.y, piece.frame.size.width, piece.frame.size.height); <- "Expression is assignable"

关于objective-c - 使用触摸移动事件移动 CALayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11864628/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com