UIBezierPath *path = [UIBezierPath bezierPath];
CGFloat width = 150.f;
CGFloat height = self.tableView.height;
CGFloat x = (self.width - width) / 2;
CGFloat y = 64.5f;
CGFloat arrowHeight = 5.f;
CGFloat arrowWidth = 10.f;
[path moveToPoint:CGPointMake(x, y)];
[path addLineToPoint:CGPointMake(self.centerX - arrowWidth / 2, y)];
[path addLineToPoint:CGPointMake(self.centerX, y - arrowHeight)];
[path addLineToPoint:CGPointMake(self.centerX + arrowWidth / 2, y)];
[path addLineToPoint:CGPointMake(x + width, y)];
[path addLineToPoint:CGPointMake(x + width, y + height)];
[path addLineToPoint:CGPointMake(x, y + height)];
[path closePath];
CAShapeLayer *layer = [CAShapeLayer layer];
layer.shadowColor = [UIColor purpleColor].CGColor;
layer.shadowOpacity = 0.4;
layer.shadowRadius = 10;
layer.strokeColor = [UIColor colorWithRed:234.0/255 green:84.0/255 blue:87.0/255 alpha:1].CGColor;
layer.fillColor = [UIColor whiteColor].CGColor;
layer.frame = self.bounds;
layer.path = path.CGPath;
[self.layer insertSublayer:layer atIndex:0];
self.shapeLayer = layer;
CGFloat width = 150.f;
CGFloat height = self.tableView.height;
CGFloat x = (self.width - width) / 2;
CGFloat y = 64.5f;
CGFloat arrowHeight = 5.f;
CGFloat arrowWidth = 10.f;
[path moveToPoint:CGPointMake(x, y)];
[path addLineToPoint:CGPointMake(self.centerX - arrowWidth / 2, y)];
[path addLineToPoint:CGPointMake(self.centerX, y - arrowHeight)];
[path addLineToPoint:CGPointMake(self.centerX + arrowWidth / 2, y)];
[path addLineToPoint:CGPointMake(x + width, y)];
[path addLineToPoint:CGPointMake(x + width, y + height)];
[path addLineToPoint:CGPointMake(x, y + height)];
[path closePath];
CAShapeLayer *layer = [CAShapeLayer layer];
layer.shadowColor = [UIColor purpleColor].CGColor;
layer.shadowOpacity = 0.4;
layer.shadowRadius = 10;
layer.strokeColor = [UIColor colorWithRed:234.0/255 green:84.0/255 blue:87.0/255 alpha:1].CGColor;
layer.fillColor = [UIColor whiteColor].CGColor;
layer.frame = self.bounds;
layer.path = path.CGPath;
[self.layer insertSublayer:layer atIndex:0];
self.shapeLayer = layer;