如何隐藏UIView的子帧?

Dav*_*Ari 6 iphone objective-c uiview ios

假设我有一个带有框架(0,0,100,30)的UIImageView.为imageView分配了一个图像.

什么是最简单的方式来显示图像的一部分?

例如:仅出现在点30-60(宽度)和0-30(高度)中.这意味着应隐藏图像的左右边缘.

只是为了澄清,我不想移动视图也不想改变它的大小,我只想隐藏它的框架.

Rya*_*los 4

你总是可以设置一个面具。

CALayer *maskLayer = [CALayer layer];
maskLayer.backgroundColor = [UIColor blackColor].CGColor;
maskLayer.frame = CGRectmake(30.0, 0.0, 30.0, 30.0);

view.layer.mask = maskLayer;
Run Code Online (Sandbox Code Playgroud)

蒙版可以是任何类型的图层,因此您甚至可以使用CAShapeLayer复杂的蒙版并做一些非常酷的事情。