项目介绍:
高仿淘宝查看图片的详情:点击图片的某一个部位,可以在下面更清楚的显示点击的内容,可以对图片透明度的处理。
主要代码示例:
[Objective-C] 查看源文件 复制代码
-(void)clicked:(UIGestureRecognizer *)gest{ // 获取正在显示的原始位图 UIImage *srcImage = self.image1.image; // 获取用户手指在image1上的触碰点 CGPoint pt = [gest locationInView:self.image1]; // 获取正在显示的原图对应的CGImageRef CGImageRef sourceImage = [srcImage CGImage]; // 获取图片实际大小与第一个UIImageView的缩放比例 CGFloat scale = srcImage.size.width / ScreenW; // 将image1上的触碰点的左边换算成原始图片上的位置 CGFloat X = pt.x * scale; CGFloat Y = pt.y * scale; if (X + 120 > srcImage.size.width){ X = srcImage.size.width - 140; } if (Y + 120 > srcImage.size.height){ Y = srcImage.size.height - 140; } // 调用CGImageCreateWithImageInRect函数来获取sourceImage中指定区域的图片 CGImageRef newImageRef = CGImageCreateWithImageInRect(sourceImage, CGRectMake(X, Y, 140, 140)); // 让image2控件显示为newImageRef对应的图片 self.image2.image = [UIImage imageWithCGImage:newImageRef]; }
DEMO下载: