1

我有以下设置。我有一个call ,其中包含一个被调用UIView的。可以使用一些需要在. 在其 drawRect 方法中有一些绘图代码需要在转换时更新。parentViewUIViewchildViewparentViewparentViewchildViewparentView

我注意到当我变换parentView(缩放或旋转)时,childView也会自动变换。问题是,虽然我确实希望在 上启动旋转变换,但childView我不希望它是缩放的,我宁愿执行它的绘图代码。

所以我的问题是,处理这种情况的好方法是什么?我注意到当我在转换后调用“ setNeedsDisplay”时,它不会被执行。childViewparentView

4

2 回答 2

2

不要转换父视图;转换子视图的同级。

换句话说,您当前的设置如下所示:

transformedView
    childView

相反,请执行以下操作:

parentView
    transformedView
    childView

这样转化不会影响到孩子。

于 2013-03-23T02:20:45.897 回答
1

我必须将旋转应用于parentView,然后设置 和 的 bounds 属性parentViewchildView调整它的大小。然后我能够成功地重新绘制childViewdrawRect底线是,尽管我认为如果您在子视图上设置转换,我认为您将不得不在其子视图中使用它。我尝试单独设置变换,所有变换的时间都搞砸了。布伦特原油的上述情况在某些情况下也可能派上用场。

于 2013-03-25T23:28:42.463 回答