Установка радиуса угла элемента в пользовательском UITableViewCell

Мой код почти работает, но есть одна проблема.

Как только таблица загружается, изображения выглядят следующим образом:

Как только таблица загружается, изображения выглядят следующим образом

Но когда я просматриваю таблицу, все хорошо:

Но когда я просматриваю таблицу, все хорошо

Что здесь отсутствует?

class ShopTableViewCell: UITableViewCell { let disposeBag = DisposeBag() @IBOutlet weak var shopImageView: UIImageView! @IBOutlet weak var imagesCollectionView: UICollectionView! @IBOutlet weak var nameLabel: UILabel! @IBOutlet weak var likeButton: UIButton! @IBOutlet weak var imageContainer: UIView! override func layoutSubviews() { super.layoutSubviews() imageContainer.clipsToBounds = true imageContainer.layer.cornerRadius = imageContainer.frame.size.width / 2 imageContainer.layer.borderWidth = 1 imageContainer.layer.borderColor = UIColor(hex: "#BDBDBD").CGColor 

  • Каков правильный способ указать нагрузку на UITableView на iOS 7?
  • Подзаголовок UITextField для UITableViewCell, получить индексную ячейку ячейки
  • Как объединить только углы в UITableView?
  • UITableViewCell подвижная анимация
  • IPad создает программно UITableViewCell
  • Как скрыть заголовок UITableView, а затем снова открыть его?
  • Контроллер просмотра не отображается сразу
  • Получите IndexPath из подкласса UITableViewCell в Swift
  • One Solution collect form web for “Установка радиуса угла элемента в пользовательском UITableViewCell”

    Это связано с тем, что свойство frame вашего изображения не обновлено.

    Вы можете создать подкласс UIImageView и выполнить эту работу, например:

    стриж

     class CircleImageView: UIImageView { override func layoutSubviews() { super.layoutSubviews() self.layer.borderWidth = 1 / UIScreen.mainScreen().scale self.layer.borderColor = UIColor(hex: "#BDBDBD").CGColor self.layer.cornerRadius = self.bounds.size.width/2 self.layer.masksToBounds = true } } 

    Objective-C

     @implementation CircleImageView - (void)layoutSubviews { [super layoutSubviews]; self.layer.borderWidth = 1 / [UIScreen mainScreen].scale; self.layer.borderColor = [UIColor whiteColor].CGColor; self.layer.cornerRadius = self.bounds.size.width/2; self.layer.masksToBounds = YES; } @end 
    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.