首先胚吁,你創(chuàng)建一個(gè)SegueHandlerType底燎,它將SegueIdentifier枚舉標(biāo)識為一個(gè)類型:
現(xiàn)在你可以使用功能強(qiáng)大的協(xié)議擴(kuò)展為 UIViewController 對象創(chuàng)建基于字符串的 Segueidentifer 枚舉:
注意在協(xié)議擴(kuò)展中的方法并沒有在協(xié)議中申明--它們并不表示被重寫(override)冶忱。
這是我見到過的最好的使用實(shí)例〔防剩現(xiàn)在熬的,使用起來非常簡單和美觀:
結(jié)論
從視頻中可以看到使用SegueHandlerType的好處包括:
當(dāng)新添加segues沒有被處理的時(shí)候莉恼,編譯器就會(huì)報(bào)錯(cuò)
重用性
簡潔的語法
我們同時(shí)也看到了協(xié)議的強(qiáng)大
使用協(xié)議以及關(guān)聯(lián)類型來加強(qiáng)應(yīng)用約束
通過一個(gè)被約束的協(xié)議擴(kuò)展來共享實(shí)現(xiàn)
這里最重要的一點(diǎn)就是利用了編譯器的優(yōu)點(diǎn)拌喉。如果你以這種方式構(gòu)建你的代碼,編譯器會(huì)為你工作俐银,并在犯錯(cuò)的時(shí)候提醒你尿背。