tôi đã xác định điều này trong mã:Tại sao một IBOutletCollection trỏ đến các ô tĩnh từ bảng phân cảnh trả về null?
@property (nonatomic, weak) IBOutletCollection(UITableViewCell) NSSet * certaintyCells;
và tổng hợp. Tôi hoàn toàn chắc chắn rằng bộ điều khiển này được sử dụng trong bảng câu chuyện và kết nối ba ô với bộ sưu tập này.
Tiếp theo, trong lời gọi phương thức didSelectRowAtIndexPath:
, tôi đã thêm mã này, với NSLog thêm để gỡ lỗi:
NSLog(@"Certainty Cells: %@",certaintyCells);
for (UITableViewCell * cell in certaintyCells) {
[cell.textLabel setTextColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:1]];
[cell setSelectionStyle:UITableViewCellSelectionStyleBlue];
}
Kết quả là thế này:
Certainty Cells: (null)
Và dĩ nhiên, hành vi dự kiến không xảy ra.
Bất kỳ ý tưởng nào về lý do tại sao điều này xảy ra? Tôi đã đảm bảo rằng tôi đang sử dụng các tế bào tĩnh, và không phải là nguyên mẫu động. Là một lưu ý phụ, ba ô này cũng được kết nối với IBOutlets (hoạt động) của riêng chúng.
Xin cảm ơn,
Nghĩ như vậy, không thể tìm thấy câu trả lời trong tài liệu của apple. Thay đổi nó mạnh mẽ, nó hoạt động ngay bây giờ. Tôi tự hỏi nếu nó sẽ được dealloc-ed .. bất cứ ai? – Oritm
Nó nên dealloc tự động khi xem deallocs điều khiển xem, bạn có thể đặt nó để nil trong viewDidUnload nếu bạn muốn nó dealloc ở đó. –