隱藏返回按鈕
當(dāng)是某個(gè)界面被push進(jìn)來(lái)的時(shí)候门坷,其導(dǎo)航欄左側(cè)會(huì)自動(dòng)顯示返回按鈕寥裂。
備注:項(xiàng)目中對(duì)于pop手勢(shì)的擴(kuò)展使用的是FDFullscreenPopGesture分類绩脆。
一般會(huì)想到如下三種解決辦法
方法一
self.navigationItem.leftBarButtonItem = nil;
但是方法一并不能隱藏返回按鈕。
方法二
self.navigationItem.hidesBackButton = YES;
能隱藏但是存在問(wèn)題:當(dāng)你進(jìn)行pop手勢(shì)但又不退出界面時(shí)入录,被我們隱藏的返回按鈕會(huì)重新顯示出來(lái)洽胶,而且顯示不完全晒夹。
顯示三個(gè)點(diǎn)的控件信息如下,其實(shí)就是返回按鈕:
方法三
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:[[UIView alloc] initWithFrame:CGRectZero]];
這是最好的解決方法姊氓,即用一個(gè)視圖創(chuàng)建leftBarButtonItem丐怯,可以是一個(gè)frame為CGRectZero或者自定義樣式的視圖。
關(guān)于界面消失鍵盤(pán)的回收問(wèn)題
如果某個(gè)界面通過(guò)監(jiān)聽(tīng)鍵盤(pán)的顯示和隱藏來(lái)控制UISCrollView的frame翔横,當(dāng)你通過(guò)pop手勢(shì)又不完全退出界面時(shí)(并沒(méi)有回收鍵盤(pán))读跷,可能會(huì)引發(fā)UI上面的bug。也就是整個(gè)UISCrollView像右偏移而且其寬度會(huì)突變禾唁,就像這樣的:
在這個(gè)過(guò)程中打印UISCrollView的frame如下:
不過(guò)我自己?jiǎn)为?dú)測(cè)試似乎沒(méi)有遇到上面的問(wèn)題效览,只是大家可以注意下這個(gè)點(diǎn),即進(jìn)行pop手勢(shì)時(shí)是否需要回收鍵盤(pán)荡短。