如何在swift 3上将UITableViewController的背景颜色更改为渐变色
Posted
技术标签:
【中文标题】如何在swift 3上将UITableViewController的背景颜色更改为渐变色【英文标题】:How to change the background color of UITableViewController to gradient color on swift 3 【发布时间】:2017-03-25 17:29:47 【问题描述】:我想将我的 UITableViewController 背景颜色更改为渐变色。
我的代码如下:
override func viewDidLoad()
super.viewDidLoad()
let gradient = CAGradientLayer()
let gradientLocations = [0.0,1.0]
gradient.frame = view.bounds;
gradient.colors = [primaryColor, secondaryColor]
gradient.locations = gradientLocations as [NSNumber]?
let backgroundView = UIView(frame: view.bounds)
backgroundView.layer.insertSublayer(gradient, at: 0)
tableView.backgroundView = backgroundView
tableView.separatorStyle = UITableViewCellSeparatorStyle.none
tableView.backgroundColor = UIColor.clear
然后变成黑色。
我发现了这个非常相似的问题,但它无法解决我的问题。 Set gradient behind UITableView
请帮忙! 提前致谢。
【问题讨论】:
我的谷歌搜索...“swift 3 渐变背景”.. 最佳结果.. ***.com/questions/24380535/….虽然这不是专门针对表格视图的,但它应该可以解决您的一个问题……然后是所有问题。 【参考方案1】:我创建了一个带有完全包含您的代码的表格视图控制器的新项目。我所要做的就是使单元格也透明,就像你链接到的帖子所说的那样。它起作用了,所以这让我很好奇。您没有显示 primaryColor
和 secondaryColor
是什么。
请注意,您需要在gradient.colors
中使用CGColor
s。我刚刚尝试使用UIColor
s,屏幕也一样黑。尝试使用
gradient.colors = [UIColor.red.cgColor, UIColor.blue.cgColor]
或者更确切地说(如果它们确实是 UIColor
类型)
gradient.colors = [primaryColor.cgColor, secondaryColor.cgColor]
【讨论】:
以上是关于如何在swift 3上将UITableViewController的背景颜色更改为渐变色的主要内容,如果未能解决你的问题,请参考以下文章
Swift - 如何在 Firebase 上将排序查询创建为降序?
如何在 iOS 上将“MongoDB 日期时间(ISO 日期)”解析为 NSDate(swift 和 Objective-c)
如何在 Swift 上将具有自定义 ID 的文档添加到 Firebase (Firestore)
如何在 Swift 上将 Parse `PFUser` 从`MapView` 传递(抓取)到另一个`ViewController`?