gpt4 book ai didi

ios - 阴影不适用于顶部 Tableview 的圆角

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:10:09 25 4
gpt4 key购买 nike

你好,在我的情况下,我正在使用两个条件,一个是仅在顶部的阴影之后制作圆角的顶 View ,只有一个条件有效,如果我为阴影添加代码它不起作用,但我删除了角落代码然后阴影作品请指导我

对于圆角,我正在使用这个扩展

extension UIView {
func roundCorners(corners:UIRectCorner, radius: CGFloat) {
let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
let mask = CAShapeLayer()
mask.path = path.cgPath
self.layer.mask = mask
}

和阴影

func shadowToUIView( uiview : UIView){
uiview.layer.shadowColor = UIColor.darkGray.cgColor
uiview.layer.shadowOpacity = 0.50
uiview.layer.shadowOffset = CGSize(width: 1, height: 1)
uiview.layer.shadowRadius = 5
uiview.layer.shouldRasterize = false
}

在行的单元格中我正在使用这个

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! HomeTableViewCell
cell.firstView.roundCorners(corners: [.topLeft,.topRight], radius: 25.0)
shadowToUIView(uiview: cell.firstView)
HomeMenu.openMenuCard(cell:cell, indexPath:indexPath, firstViewMain:firstViewMain, openedTab: openedTab)
return cell
}

添加回复代码后

Image

最佳答案

下面是使 UIView 带有阴影的圆形的方法:

extension UIView {
func addShadow(cornerRadius: CGFloat, maskedCorners: CACornerMask, color: UIColor, offset: CGSize, opacity: Float, shadowRadius: CGFloat) {
self.layer.cornerRadius = cornerRadius
self.layer.maskedCorners = maskedCorners
self.layer.shadowColor = color.cgColor
self.layer.shadowOffset = offset
self.layer.shadowOpacity = opacity
self.layer.shadowRadius = shadowRadius
}
}

使用:为了圆化所有的角落:

<your_view_object>.addShadow(cornerRadius: 10.0, maskedCorners: [.layerMaxXMaxYCorner, .layerMinXMaxYCorner, .layerMaxXMinYCorner, .layerMinXMinYCorner], color: AppColors.themeBlack.withAlphaComponent(0.6), offset: CGSize.zero, opacity: 0.4, shadowRadius: 4.0)

仅圆顶角:

<your_view_object>.addShadow(cornerRadius: 10.0, maskedCorners: [.layerMaxXMinYCorner, .layerMinXMinYCorner], color: AppColors.themeBlack.withAlphaComponent(0.6), offset: CGSize.zero, opacity: 0.4, shadowRadius: 4.0)

仅对底角进行舍入:

<your_view_object>.addShadow(cornerRadius: 10.0, maskedCorners: [.layerMaxXMaxYCorner, .layerMinXMaxYCorner], color: AppColors.themeBlack.withAlphaComponent(0.6), offset: CGSize.zero, opacity: 0.4, shadowRadius: 4.0)

为了根据您的要求更改其他参数来制作阴影。

关于ios - 阴影不适用于顶部 Tableview 的圆角,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57799821/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com