一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - IOS - iOS Swift創(chuàng)建代理協(xié)議的多種方式示例

iOS Swift創(chuàng)建代理協(xié)議的多種方式示例

2021-04-09 15:14LinXunFeng IOS

這篇文章主要給大家介紹了關(guān)于iOS Swift創(chuàng)建代理協(xié)議的多種方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

本文主要給大家介紹了ios swift創(chuàng)建代理協(xié)議的各種方式,分享出來供大家參考學(xué)習(xí),下面話不多說了,來一起看看詳細(xì)的介紹吧。

假如有一個(gè)類為 lxfview,現(xiàn)在要為這個(gè)類創(chuàng)建一個(gè)代理協(xié)議,我們?cè)撊绾巫瞿兀?/p>

首先,代理協(xié)議的命名方式:類名 + delegatev

?
1
2
3
protocol lxfviewdelegate {
 func view(_ view: lxfview)
}

當(dāng)我們創(chuàng)建的協(xié)議遵守其它協(xié)議的情況下,只是這樣寫并不會(huì)報(bào)錯(cuò),接下來我們?cè)趌xfview中添加一個(gè)代理屬性,為避免循環(huán)引用,代理屬性需要用weak修飾

?
1
2
3
class lxfpageview: uiview {
 weak var delegate: lxfviewdelegate?
}

此時(shí)就報(bào)錯(cuò)了,提示如下

?
1
'weak' may only be applied to class and class-bound protocol types, not 'lxfviewdelegate'

iOS Swift創(chuàng)建代理協(xié)議的多種方式示例

意思是weak只能修飾一個(gè)類或者類綁定協(xié)議的類型

正如提示一樣,我們當(dāng)前的代理并非是一個(gè)類或者類綁定協(xié)議的類型

當(dāng)前我們這個(gè)協(xié)議不僅可以被類遵守,還可以被結(jié)構(gòu)體和枚舉所遵守(這里不演示了),這無法達(dá)到weak的要求,那怎么辦呢?

解決辦法有兩個(gè):

辦法1

直接在協(xié)議的后面寫上【: class】或者【: nsobjectprotocol】

?
1
2
3
protocol lxfpageviewdelegate: class
// 或者
protocol lxfpageviewdelegate: nsobjectprotocol

iOS Swift創(chuàng)建代理協(xié)議的多種方式示例

這種方式下推薦【: class】,相比之下更為輕量級(jí)

辦法2

在protocol前面加上【@objc】,表示objc類型的協(xié)議

?
1
@objc protocol lxfpageviewdelegate

這種方式下的優(yōu)點(diǎn)是協(xié)議中的方法不強(qiáng)制實(shí)現(xiàn)

iOS Swift創(chuàng)建代理協(xié)議的多種方式示例

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)服務(wù)器之家的支持。

原文鏈接:https://juejin.im/post/5a3290126fb9a04511712889

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 青草久久影院 | 羞羞答答免费人成黄页在线观看国产 | 996热精品视频在线观看 | 精品一区二区三区 不卡高清 | 92福利网| 91精品国产99久久 | 午夜国产精品视频在线 | 免费午夜剧场 | 日本欧美不卡一区二区三区在线 | 69老司机亚洲精品一区 | boobsmilking流奶水野战 | 四虎影剧院 | 精品视频在线观看免费 | 国产日韩欧美在线一区二区三区 | 国产综合久久 | 日韩大片免费观看 | 四虎在线视频免费观看视频 | 四虎影院在线 | 欧美亚洲天堂网 | 美女一级ba大片免色 | 男人疯狂进女人下部视频动漫 | 久久综合久久伊人 | 精品国产区一区二区三区在线观看 | 色综合欧美色综合七久久 | 日本亚洲欧洲高清有码在线播放 | 校园情射 | 男女肉文高h | 女子监狱第二季未删减在线看 | 暖暖免费高清完整版观看日本 | 性欧美金发洋妞xxxxbbbb | 午夜影院费试看黄 | 884aa草莓视频 | 91夜色视频 | 免费特黄视频 | 乌克兰一级毛片9一18 | aⅴ免费视频 | 国产视频一区二区 | 18xxxx中国 | aaaa大片| 91久久偷偷做嫩草影院免费 | 久久夜色噜噜噜亚洲AV0000 |