Set gradient behind UITableView
You need to create background view and assign it to cell:
func setTableViewBackgroundGradient(sender: UITableViewController, _ topColor:UIColor, _ bottomColor:UIColor) { let gradientBackgroundColors = [topColor.CGColor, bottomColor.CGColor] let gradientLocations = [0.0,1.0] let gradientLayer = CAGradientLayer() gradientLayer.colors = gradientBackgroundColors gradientLayer.locations = gradientLocations gradientLayer.frame = sender.tableView.bounds let backgroundView = UIView(frame: sender.tableView.bounds) backgroundView.layer.insertSublayer(gradientLayer, atIndex: 0) sender.tableView.backgroundView = backgroundView}
Also don't forget to set UITableViewCell
background color to clear color:
override func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) { cell.backgroundColor = UIColor.clearColor()}