Dưới đây là cách tôi thể hiện UIAlertView và clickedButtonAtIndex đại biểu -ARC và UIAlertView: chọn không được công nhận gửi đến dụ
UIAlertView *alert =
[[UIAlertView alloc] initWithTitle: @"title"
message: @"message"
delegate: self
cancelButtonTitle: @"Cancel"
otherButtonTitles: @"Continue", nil];
[alert show];
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
//something
}
Đoạn mã này hoạt động hoàn hảo mà không ARC. Nhưng với ARC nó throws lỗi này - Chấm dứt ứng dụng do ngoại lệ còn tự do 'NSInvalidArgumentException', lý do: '- [__ NSCFType alertView: clickedButtonAtIndex:]: chọn không được công nhận gửi đến dụ 0x859d790'
Bất kỳ ý tưởng về lý do tại sao các đại biểu là ném lỗi này?
Bản thân đại biểu đang được deallocated. Bạn tạo và quản lý đối tượng đó như thế nào? –
@ FirozeLafeer - đối tượng đang gọi đoạn mã này, tức là bản thân đã được ARC phát hành. Tôi đã biến nó trở thành tài sản và bây giờ nó có vẻ hoạt động. Cảm ơn :) – arank