Tôi chỉ thực sự bắt đầu phát triển IOS nhưng có một vài năm phát triển ASP.net thông qua C#. Thành thật mà nói, tôi chưa bao giờ có nhu cầu thực sự để hiểu đại biểu/sự kiện, v.v. trước đây, tôi biết rằng tôi đang sử dụng chúng khi lập trình web.forms nhưng rất nhiều chức năng được quản lý bởi khung công tác, đằng sau hậu trường . Vì vậy, bây giờ tôi đang phát triển trong IOS, tôi buộc phải cố gắng hiểu làm thế nào họ hoạt động (Tôi giả sử ở đây rằng lý thuyết của các đại biểu/sự kiện là như nhau trên các ngôn ngữ, có lẽ tôi là sai). Dù sao, các dòng mã sau đây trong IOS:Đại biểu trong IOS - Một số yêu cầu làm rõ
if ([self.delegate respondsToSelector:@selector(startImporting:)])
{
[self.delegate startImporting:self];
}
Tôi có ngay trong suy nghĩ rằng, trong mã giả, nó có nghĩa là một cái gì đó dọc theo dòng:
Nếu phương pháp/lớp gọi phương pháp này có một phương thức trong nó được gọi là 'startImporting', sau đó gọi phương thức 'startImporting' trong lớp gọi.
Hy vọng điều đó rõ ràng. Nếu đó là trường hợp sau đó nó về cơ bản sẽ được giống như có một phương pháp tĩnh trong C# mà bạn có thể gọi với một cái gì đó như:
myImportClass.startImporting();
Có lẽ không, hay đó là cách nó sẽ được thực hiện. Vì vậy, tôi thiếu toàn bộ điểm của các đại biểu, lợi ích của họ, vv? Tôi đã đọc những gì họ hơn và hơn và trong khi nó có ý nghĩa, nó không bao giờ nhấp chuột, tôi không bao giờ (trong các hình thức web anyway) đã thực sự nhìn thấy lợi ích của việc sử dụng chúng. Điều này trở nên ngày càng quan trọng khi tôi chuyển sang sử dụng các biểu thức lambda trong .net và chúng được liên kết chặt chẽ với các đại biểu trong C# vì vậy trong khi tôi chỉ có thể bắt đầu sử dụng chúng, tôi muốn biết tại sao và các đại biểu có lợi ích gì thực sự là.
đây http://stackoverflow.com/questions/30662032/ios-callback-function -từ thư viện, bạn có thể tìm thấy chi tiết triển khai cho các đại biểu. –