我的代码那样:我用CGAffineTransformMakeRotation以旋转的标签,为什么只有文本旋转
[label2 setTransform:CGAffineTransformMakeRotation(-M_PI/2)];
循环之前一样遵循
像
旋转后
任何人都可以告诉我为什么,谢谢?
我的代码那样:我用CGAffineTransformMakeRotation以旋转的标签,为什么只有文本旋转
[label2 setTransform:CGAffineTransformMakeRotation(-M_PI/2)];
循环之前一样遵循
像
旋转后
任何人都可以告诉我为什么,谢谢?
你可以做这样的事情:
-(NSPoint)rotatePoint:(NSPoint)inPt
aroundPoint:(NSPoint)center
withAngle:(double)radians
{
NSPoint temp = {inPt.x - center.x, inPt.y - center.y};
double sinAngle = sin(radians);
double cosAngle = cos(radians);
NSPoint result;
result.x = temp.x * cosAngle - temp.y * sinAngle;
result.y = temp.x * sinAngle + temp.y * cosAngle;
result.x += center.x;
result.y += center.y;
}
然后调用上述方法的4个角你旋转视图的框架,而框架设置为新值。
我明白你说的是什么,但是有没有API设置框架与4角的价值? – Dracuuula
我不这么认为。您可以转换4个点,然后取x和y坐标的最小值和最大值,然后使用这些值创建新的矩形。 – user1118321
你是如何绘制绿色的矩形?它只是文本字段的背景颜色?如果是这样,那么它可能绘图正确。更改转换不会转换其容器内视图的边界矩形 - 只能在视图内绘制。如果你想改变视图的框架,你需要手动完成。 – user1118321
@ user1118321先谢谢。如果是这样,我怎样才能旋转标签框架的任何角度? – Dracuuula
@Dracuuula这里角度以弧度表示,只需设置合适的值以进行旋转,并且如果需要,您可以执行转换以标记超级视图 – sage444