关键代码预览:
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 300.0, 225.0)]; view.center = self.view.center; view.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleBottomMargin; view.layer.contents = (id)[UIImage imageNamed:@"photo.jpeg"].CGImage; view.layer.borderColor = [UIColor colorWithWhite:1.0 alpha:1.0].CGColor; view.layer.borderWidth = 5.0; view.layer.shadowOffset = CGSizeMake(0, 3); view.layer.shadowOpacity = 0.7; view.layer.shouldRasterize = YES; // shadow UIBezierPath *path = [UIBezierPath bezierPath]; CGPoint topLeft = view.bounds.origin; CGPoint bottomLeft = CGPointMake(0.0, CGRectGetHeight(view.bounds) + 10); CGPoint bottomMiddle = CGPointMake(CGRectGetWidth(view.bounds) / 2, CGRectGetHeight(view.bounds) - 5); CGPoint bottomRight = CGPointMake(CGRectGetWidth(view.bounds), CGRectGetHeight(view.bounds) + 10); CGPoint topRight = CGPointMake(CGRectGetWidth(view.bounds), 0.0); [path moveToPoint:topLeft]; [path addLineToPoint:bottomLeft]; [path addQuadCurveToPoint:bottomRight controlPoint:bottomMiddle]; [path addLineToPoint:topRight]; [path addLineToPoint:topLeft]; [path closePath]; view.layer.shadowPath = path.CGPath; [self.view addSubview:view];