所以我做了一个UIView子类,我们称之为'MyView',它只是在DrawRect方法内绘制一条线。iPhone:在自定义视图中,如何在视图中的任何其他位置绘制一些东西?
然后我在界面生成器中拖动一个UIImageView并将其放入MyView中。但是现在当我运行该程序时,它正在模糊我正在绘制的线条。我想知道,有没有办法让我在我拖入视图的图像顶部画线?
所以我做了一个UIView子类,我们称之为'MyView',它只是在DrawRect方法内绘制一条线。iPhone:在自定义视图中,如何在视图中的任何其他位置绘制一些东西?
然后我在界面生成器中拖动一个UIImageView并将其放入MyView中。但是现在当我运行该程序时,它正在模糊我正在绘制的线条。我想知道,有没有办法让我在我拖入视图的图像顶部画线?
不,你会必须重新组织视图层次结构。 CoreGraphics使用一个画家模型,所以后面的视图总是会被视图中的视图所吸引。为了解决这个问题,你可以使用容器视图来保存你的图像视图,并且在图像视图上有一个透明的视图(线条图视图)。
另一种方法是在drawRect方法中使用核心图形调用绘制图像,然后在其上绘制线条。
一种方法是有任何添加MyView
添加您的UIImageView
顶部的MyView
。这不是理想的(你可能有保持MyView
和UIImageView
在一个类很好的理由),但绝对可以解决你的问题(我最近做了这一点,只是,我把它添加到keyWindow
=)
我会使用一个CAShapeLayer,它具有代表该行的路径,并在内置视图图层之前插入该图层。然后它应该在顶部。