Ios 遮光UIImageView的区域或显示部分视图
有没有一种方法可以将Ios 遮光UIImageView的区域或显示部分视图,ios,uiview,uiimageview,Ios,Uiview,Uiimageview,有没有一种方法可以将UIImageView的某个区域(由一帧定义)涂黑,而不创建覆盖UIView实例(使用此帧)并将其涂黑 是否有类似的方法可以显示UIImageView的一部分,而不使用UIView实例来遮住图像的其余部分?您可以在DrawRect方法中对UIImageView进行子类化,并根据需要进行绘制 您可以创建UIIMageView的子类,并在那里定义drawRectMethod 您还可以通过调用视图上的setNeedsLayout方法来调用drawRect方法。(setNeedsDi
UIImageView
的某个区域(由一帧定义)涂黑,而不创建覆盖UIView
实例(使用此帧)并将其涂黑
是否有类似的方法可以显示
UIImageView
的一部分,而不使用UIView实例来遮住图像的其余部分?您可以在DrawRect方法中对UIImageView进行子类化,并根据需要进行绘制
我想在这里略作欺骗,并建议您使用layer,因为它很轻
CALayer *blackLayer = [CALayer layer];
blackLayer.backgroundColor = [UIColor blackColor];
blackLayer.frame = imageView.bounds;
[imageView.layer addSublayer:blackLayer];
对于第二部分,你可以考虑使用一个层次的网格(黑色)。当用户触摸图像视图时,您可以从他触摸过的区域中拾取图层,并将其从超级图层(即图像视图的根图层)中删除。感谢您的更新。对于
drawRect:
方法中的内容,我仍然不清楚。这正是我想要的。你可以使用CoreGraphics在drawRect方法的子类视图上绘制你想要的任何东西。在您的情况下,我认为您需要将区域设置为黑色。这可以使用核心图形来完成。