swift如何只显示图片的一部分。

新手上路,请多包涵

UI图都放在一张图片上了,请问我在给UIbutton设置背景图片的时候如何只显示UI图片的特定位置、大小的一部分,用来给button做背景。

阅读 4.6k
1 个回答

参考stackoverflow:http://stackoverflow.com/a/8443937
rect就是你要的部分的x/y/width/height,改写成swift的写法就可以了

    - (UIImage *)crop:(CGRect)rect {
        if (self.scale > 1.0f) {
            rect = CGRectMake(rect.origin.x * self.scale,
                              rect.origin.y * self.scale,
                              rect.size.width * self.scale,
                              rect.size.height * self.scale);
        }
    
        CGImageRef imageRef = CGImageCreateWithImageInRect(self.CGImage, rect);
        UIImage *result = [UIImage imageWithCGImage:imageRef scale:self.scale orientation:self.imageOrientation];
        CGImageRelease(imageRef);
        return result;
    }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进