FSPagerView
FSPagerView copied to clipboard
How can I set corner radius for custom Cell
I tried some codes below
contentView.layer.shadowRadius = 0
contentView.layer.cornerRadius = 20.0
contentView.layer.shadowColor = UIColor.clear.cgColor
But it not works. I appreciate any help on this.
this is what I did in my code
public func pagerView(_ pagerView: FSPagerView, cellForItemAt index: Int) -> FSPagerViewCell {
let cell = pagerView.dequeueReusableCell(withReuseIdentifier: "cellPager", at: index)
let bans = banners[index]
let query = bans.image.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)
cell.imageView?.sd_setImage(with: URL(string: query!), placeholderImage: UIImage(named: "placeholder"))
cell.imageView?.contentMode = .scaleAspectFill
cell.imageView?.clipsToBounds = true
cell.imageView?.layer.shadowRadius = 0
cell.imageView?.layer.cornerRadius = 25
return cell
}
@IBOutlet weak var adsBannerView: FSPagerView! { didSet { self.adsBannerView.register(FSPagerViewCell.self, forCellWithReuseIdentifier: "cell") adsBannerView.layer.cornerRadius = 5 adsBannerView.automaticSlidingInterval = 5 } }
Try this way
pagerView.layer.masksToBounds = true
pagerView.layer.masksToBounds = 15
in my case : when pagerView height greater than itemSize.height,set any subview's cornerRadius is not working. this works for me:
- make sure itemSize equalTo(or greater than) pagerView height:
pagerView.itemSize = CGSize(width: xx, height: 100.0)
pagerView.snp.makeConstraints { (make) in
make.edges.equalToSuperview()
make.height.equalTo(100.0) // ✅
make.height.equaoTo(120.0) // ❌
}
func pagerView(_ pagerView: FSPagerView, cellForItemAt index: Int) -> FSPagerViewCell {
let cell = pagerView.dequeueReusableCell(withReuseIdentifier: "ID", at: index)
cell.imageView?.image = xxx
cell.imageView?.layer.cornerRadius = 10.0
cell.imageView?.layer.masksToBounds = true
return cell
}
set imageView's corner in this method "pagerView(_ pagerView: FSPagerView, willDisplay cell: FSPagerViewCell, forItemAt index: Int)" will be works!