使用Box2D和CGAffineTransformMakeRotation进行奇怪的旋转

时间:2013-03-06 06:18:17

标签: ios objective-c core-graphics box2d box2d-iphone

我正在使用CGAffineTransformMakeRotation旋转UIView,旋转值来自名为Box2D的2D物理引擎(您可能已经听说过它)。除了旋转将旋转UIView之外,集成似乎工作正常。无法解释它,所以这是一个显示错误的视频:

http://screencast.com/t/uamth2O7mL

obj是一个结构,它有另一个名为“frame”的结构和一个名为rotation的浮点数。两者都100%正常工作。

UIView *view = [self.view .subviews objectAtIndex:i];

view.transform = CGAffineTransformMakeRotation(obj->rotation);
[view setFrame:CGRectMake(obj->frame->x, obj->frame->y, obj->frame->width, obj->frame->height)];

1 个答案:

答案 0 :(得分:0)

正如评论中所建议的那样(再次感谢@borrrden),你还需要设置UIView的界限。

根据我的代码,这是我添加的内容:

[view setBounds:CGRectMake(obj->frame->x, obj->frame->y, obj->frame->width, obj->frame->height)];