user3162215 user3162215 - 2 months ago 24
iOS Question

Image not showing in imageView if I used circular image

I have a table view and I need to show author_img in section header. In ViewForSectionHeader method, I want to make the image to be circular. But If I did that, the images are not showing at all, no matter in simulator or in real device. If I remove the code, uiimageview will show the images normally. I set up the width and height constraint for uiimageview because I want to get fixed size of showing images. So Any ideas, please?

cell.author_img.layer.cornerRadius = cell.author_img.frame.size.width/2
cell.author_img.layer.masksToBounds = true
// add a boundary for thumb
cell.author_img.layer.borderWidth = 1.5
cell.author_img.layer.borderColor = UIColor.whiteColor().CGColor

Answer

It may come from the fact that you are setting the cornerRadius too early, the final size of your author_img is not fixed yet. Try to set that cornerRadius when you are sure that the layout of your cell has been entirely calculated.

For test purpose, just to make sure it is coming from this behaviour, try to hardcode the cornerRadius.

cell.author_img.layer.cornerRadius = 10

If your image has a slight cornerRadius, it means that the issue is coming from what I explained earlier, if it is still not showing, it is coming from something else.

If it does come from the fact the size of your image is not fixed, try to set your cornerRadius in something like viewDidAppear, I mean the latest you can do.