相信大家在開(kāi)發(fā)中經(jīng)常會(huì)遇到這樣的需求,在編輯個(gè)人信息界面中存璃,判斷用戶是否修改信息胚吁,如果修改,返回時(shí)則添加是否保存的提示恋腕,如果沒(méi)有修改內(nèi)容,則直接返回逆瑞。
這里我是使用的系統(tǒng)的返回按鈕荠藤,監(jiān)聽(tīng)系統(tǒng)返回的事件來(lái)處理的。
1.監(jiān)聽(tīng)返回按鈕點(diǎn)擊事件
只需要在工程中引入UIViewController-BackButtonHandler获高,并實(shí)現(xiàn)方法就可以了
屏幕快照 2017-08-09 上午9.27.01.png
返回YES哈肖,代表執(zhí)行系統(tǒng)返回,返回NO不執(zhí)行念秧。這里我在這個(gè)方法里面判斷對(duì)象是否被修改淤井,如果被修改,則彈出提示框摊趾。
屏幕快照 2017-08-09 上午9.28.59.png
2.監(jiān)聽(tīng)返回手勢(shì)的方法
控制器實(shí)現(xiàn)<UINavigationControllerDelegate,UIGestureRecognizerDelegate>
這兩個(gè)協(xié)議币狠,
在viewWillAppear
中實(shí)現(xiàn)控制器的代理
在viewWillDisappear
把返回代理移交給topViewController
接下來(lái)在監(jiān)聽(tīng)手勢(shì)的ShouldBegin
方法,當(dāng)pop手勢(shì)觸發(fā)時(shí)就會(huì)調(diào)用這個(gè)方法,判斷當(dāng)前的手勢(shì)是否是系統(tǒng)的返回手勢(shì)砾层,如果是則攔截漩绵,不是則不處理。
屏幕快照 2017-08-09 上午9.35.24.png
返回YES,則代表執(zhí)行該手勢(shì)肛炮。返回NO,表示不執(zhí)行
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者