将view剪切为各种形状的view(类似微信聊天图片展示)。
网上有很多这样的文章,但大多都是用贝塞尔曲线画的。这样太耗费cpu了,而且不易于实现。如果角度没控制好,还跟设计不一样。对于初学者,还要花费大量时间去学习贝塞尔曲线的使用。用下面的方法感觉简单粗暴,易于实现。
UIImage *normal = [UIImage imageNamed:@"chatto_bg_normal"];// 这个是最终形状的图片。
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 100, 100)]; //这个要被裁剪的view
UIImageView *imageViewMask = [[UIImageView alloc] initWithImage:normal];
imageViewMask.frame = CGRectInset(imageView.frame, 0.0f, 0.0f);
imageView.layer.mask = imageViewMask.layer;
[self.view addSubview:imageView];