如何使用动态单元格设置视图的背景(UITableview)?

时间:2017-01-25 13:58:28

标签: ios swift uitableview uiview background

我正在尝试将背景颜色设置为UITableViewCell占用的视图。我拖了一个插座,并有一个梯度层,我回到它

extension CAGradientLayer{
func viewGradient(topColour:UIColor,bottomColour : UIColor) -> CAGradientLayer{
   let gradientColor: [CGColor] = [topColour.cgColor, bottomColour.cgColor]
   let gradientLocations: [Float] = [0.0/1.0]
   let gradientLayer: CAGradientLayer = CAGradientLayer()
   gradientLayer.colors = gradientColor
   gradientLayer.locations = gradientLocations as [NSNumber]?

   return gradientLayer
  }
}

我在视图控制器的viewDidLoad方法中访问此方法

 let bottomColour = UIColor(red: (0.018), green: (0.38), blue: (0.64), alpha: 1.0)
 let topColour = UIColor(red: (0.13), green: (0.63), blue: (0.67), alpha: 0.7)
 let background = CAGradientLayer().viewGradient(topColour:topColour,bottomColour : bottomColour)
 background.frame = self.view.bounds
 self.view.layer.insertSublayer(background, at: 0)
 myMenu.layer.insertSublayer(background, at: 0)

我的表视图中有动态单元格,随着单元格数量的增加,视图向下滑动,我必须滚动查看我的单元格。我有空格。有什么方法可以设置整个滚动区域以获得我的背景渐变颜色或者我错过了什么?

Here is the screenshot of the images showing my exact problem

1 个答案:

答案 0 :(得分:1)

如上所述,UITableView具有backgroundView属性。

viewDidLoad方法中,将background常量声明为原样,然后在下面添加:

self.tableView.backgroundView = background

希望有所帮助。