cari

Rumah  >  Soal Jawab  >  teks badan

objective-c - iOS中UIView调用removeFromSuperView之后没有释放内存

我有一个自定义的UITableViewCell,暂且叫ACell,该cell有以下属性:

@property (nonatomic, strong) UILabel *titleLabel;
@property (nonatomic, strong) UIButton *deleteButton;

全部addSubview到cell的contentView,主要是点击deleteButton之后把titleLabel移除:

- (void)deleteButtonClicked {
    [self.titleLabel removeFromSuperview];
}

执行以上语句之后我发现,titleLabel还是存在于内存中。就像下面这样:

怎么样才能让它立即销毁

伊谢尔伦伊谢尔伦2888 hari yang lalu1158

membalas semua(2)saya akan balas

  • 黄舟

    黄舟2017-04-18 09:42:45

    Sebabnya ialah: ACell masih memegang objek titleLabel.
    Penyelesaian: self.titleLabel = nil;

    balas
    0
  • ringa_lee

    ringa_lee2017-04-18 09:42:45

    Gantikan kuat dengan lemah Satu perkara yang perlu diambil perhatian ialah menyalin atribut selepas addsubview

    balas
    0
  • Batalbalas