objective-c - iOS中的delegate的原理是怎么回事?
PHP中文网
PHP中文网 2017-04-25 09:03:21
0
1
460

如题,以前是个c#新手,在c#里也经常用委托,回来熟了lambda后都是直接写个lambda过去。当时没觉着二者区别多大。
但现在搞iOS有点晕了,怎么这里block和delegate是不同的东西?然后再看看委托的使用上怎么又觉着这不是和使用传统意义上的接口然后多态一个意思嘛?只是delegate有optional和request而已啊。
哎呦不对,我在写这个问题的时候突然感觉好像委托就是我所说的这个原理?求大神给解惑……

PHP中文网
PHP中文网

认证高级PHP讲师

membalas semua(1)
伊谢尔伦

Perwakilan dalam objc bukan konsep yang sama seperti dalam c# Perwakilan dalam obj c ialah mod perwakilan dalam corak reka bentuk, yang biasanya merupakan protokol (dipanggil antara muka dalam bahasa lain, protokol dalam objc), pilihan dan diperlukan. (Saya rasa perkataan "permintaan" (anda salah mengejanya) bermaksud sama ada kaedah atau pembolehubah tertentu semasa melaksanakan protokol diperlukan atau pilihan. Sebagai contoh, paparan jadual itu sendiri tidak tahu berapa banyak baris yang ingin dipaparkan atau perkara yang ingin dipaparkan Apabila ia perlu memaparkannya, ia akan meminta perwakilannya (rujukan lain yang lemah bagi objek yang mematuhi UITableViewDelegate/UITableViewDatasource). Saya mahu memaparkannya. Berapa tinggi setiap baris? Tunjukkan sesuatu? Jika kelas mematuhi UITableViewDelegate, beberapa kaedah mesti dilaksanakan (diperlukan) dan beberapa adalah pilihan (pilihan). Fikirkan bahawa anda hanya menggunakan kata kunci berat dalam objc dan c#, tetapi maknanya berbeza.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan