我怎样才能在每个单元格中实现这种类型的渐变?
Posted
技术标签:
【中文标题】我怎样才能在每个单元格中实现这种类型的渐变?【英文标题】:How can i achieve this type of gradient in each cell? 【发布时间】:2016-12-09 13:00:34 【问题描述】:如何实现每个单元格下方的渐变?
【问题讨论】:
你自己尝试过什么来解决这个要求?只是要求代码是不受欢迎的,可能会让你的问题被否决。还发布您尝试自己解决此问题的方法。 对于目标 C 还是 swift ? 【参考方案1】:你可以试试下面的代码:
class func addGradientInView(_ view : UIImageView , Color1 : UIColor , color2 : UIColor , cornerRadius : CGFloat, width : CGFloat) -> CAGradientLayer
view.layer.cornerRadius = cornerRadius
view.layer.masksToBounds = true
view.layer.layoutSublayers()
let labelGradient: CAGradientLayer = CAGradientLayer()
labelGradient.masksToBounds = true
labelGradient.frame = view.bounds
labelGradient.frame.size.width = width
labelGradient.frame.size.height = width
labelGradient.colors = [(Color1.cgColor as AnyObject), (color2.cgColor as AnyObject)]
view.layer.insertSublayer(labelGradient, at: 0)
return labelGradient
调用上述方法:
addGradientInView(icon_Veges, Color1: darkGray_MaxAlpha,
color2:darkGray_MinAlpha,
cornerRadius: 0.0,
width:width)
Suppose: let darkGray_MaxAlpha = UIColor(red: 255/255.0, green: 255/255.0, blue: 255/255.0, alpha: 0.1)
let darkGray_MinAlpha = UIColor(red: 0.0/255.0, green: 0.0/255.0, blue: 0.0/255.0, alpha: 0.6)
注意:根据需要放置视图,颜色1,颜色2,宽度。
【讨论】:
兄弟你把这段代码转换成objective c了吗?因为我需要它【参考方案2】:创建一个 UIView 并子查看您想要的项目,例如名称、地点等。
然后初始化一个 CAGradientLayer 对象并设置颜色、位置和框架。然后将对象子层化到 UIView。
以下是我建议的代码 sn-p。
let gradient = CAGradientLayer()
gradient.colors = [UIColor.blackColor().colorWithAlphaComponent(0).CGColor,UIColor.blackColor().colorWithAlphaComponent(0.3).CGColor]
gradient.locations = [0.1,1.0]
gradient.frame = gradientView.bounds
gradientView.layer.addSublayer(gradient)
【讨论】:
以上是关于我怎样才能在每个单元格中实现这种类型的渐变?的主要内容,如果未能解决你的问题,请参考以下文章