淺談IQKeyboardManager第三方庫的使用

IQKeyboardManager是iOS中解決鍵盤彈起遮擋UITextField/UITextView的一種很實(shí)用的工具爬立。無需輸入任何代碼,不需要額外的設(shè)置区匣。使用IQKeyboardManager的你只需要將源文件添加到項(xiàng)目。

這里附上下載鏈接:https://github.com/hackiftekhar/IQKeyboardManager

IQKeyboardManager支持Objective-C和swift,這里建議實(shí)用Cocoapod安裝,很方便管理。

簡單總結(jié)一下IQKeyboardManager最重要的功能有以下幾點(diǎn):

1.當(dāng)鍵盤遮擋輸入文本框的時候蚓聘,自動上移View,使被遮擋的部分自動處于鍵盤的上方盟劫。

function1.gif

)

導(dǎo)入IQKeyboardManager后夜牡,默認(rèn)所有的頁面都有了這個功能,如果你在哪一個界面不想有這個效果可以在當(dāng)前界面控制器的生命周期方法中進(jìn)行設(shè)置:

#import

- (void)viewWillAppear:(BOOL)animated{[superviewWillAppear:animated]; [IQKeyboardManager sharedManager].enable=NO;}- (void)viewWillDisappear:(BOOL)animated{[superviewWillDisappear:animated]; [IQKeyboardManager sharedManager].enable=YES;}

或者在 AppDelegate中注冊方法:

- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {? [[IQKeyboardManager sharedManager] disableInViewControllerClass:[ViewController class]];returnYES;}

2.在鍵盤上會自動添加一個工具條侣签,工具條上有左箭頭和右箭頭用來切換的輸入文本框塘装,還有完成按鈕用來收回鍵盤。

function2.gif

你也可以不使用這個自動工具條影所,設(shè)置的代碼如下:

[IQKeyboardManager sharedManager].enableAutoToolbar=NO;

3.可以將鍵盤上的return按鍵蹦肴,變?yōu)镹ext/Done按鍵,默認(rèn)最后一個UITextField/UITextView的鍵盤return鍵變?yōu)镈one猴娩。順序是按照創(chuàng)建控件的先后順序阴幌,而不是從上到下的擺放順序勺阐。

function3.gif

設(shè)置的代碼如下:

#import

@implementationViewController{? ? IQKeyboardReturnKeyHandler *returnKeyHandler;}- (void)viewDidLoad{? ? [superviewDidLoad];? ? returnKeyHandler = [[IQKeyboardReturnKeyHandler alloc] initWithViewController:self];}

4.設(shè)置點(diǎn)擊背景收回鍵盤。

- (void)viewDidLoad {? ? [superviewDidLoad];? ? [IQKeyboardManager sharedManager].shouldResignOnTouchOutside=YES;}

5.如果你的視圖有導(dǎo)航欄矛双,你不想上移View時,UINavigationBar消失渊抽,如function3.gif所示,你也可以進(jìn)行相應(yīng)設(shè)置:

如果你使用的是storyboard or xib议忽,只需將當(dāng)前視圖視圖控制器中的UIView class變?yōu)閁IScrollView懒闷。

圖片.png

如果你使用的是代碼,你就需要覆蓋UIViewController中的'-(void)loadView' 方法:

-(void)loadView{UIScrollView*scrollView = [[UIScrollViewalloc] initWithFrame:[[UIScreenmainScreen] bounds]];self.view= scrollView;}

以上就是本人對IQKeyboardManager的功能簡單理解栈幸,這個第三方庫還有一些其他不怎么常用的功能愤估,以后用到會繼續(xù)更新。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末侦镇,一起剝皮案震驚了整個濱河市灵疮,隨后出現(xiàn)的幾起案子织阅,更是在濱河造成了極大的恐慌壳繁,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件荔棉,死亡現(xiàn)場離奇詭異闹炉,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)润樱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門渣触,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人壹若,你說我怎么就攤上這事嗅钻。” “怎么了店展?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵养篓,是天一觀的道長。 經(jīng)常有香客問我赂蕴,道長柳弄,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任概说,我火速辦了婚禮碧注,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘糖赔。我一直安慰自己萍丐,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布放典。 她就那樣靜靜地躺著逝变,像睡著了一般船万。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上骨田,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天耿导,我揣著相機(jī)與錄音,去河邊找鬼态贤。 笑死舱呻,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的悠汽。 我是一名探鬼主播箱吕,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼柿冲!你這毒婦竟也來了囱皿?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤舍沙,失蹤者是張志新(化名)和其女友劉穎踏志,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體宿饱,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡熏瞄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了谬以。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片强饮。...
    茶點(diǎn)故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖为黎,靈堂內(nèi)的尸體忽然破棺而出邮丰,到底是詐尸還是另有隱情,我是刑警寧澤铭乾,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布剪廉,位于F島的核電站,受9級特大地震影響片橡,放射性物質(zhì)發(fā)生泄漏妈经。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一捧书、第九天 我趴在偏房一處隱蔽的房頂上張望吹泡。 院中可真熱鬧,春花似錦经瓷、人聲如沸爆哑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽揭朝。三九已至队贱,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間潭袱,已是汗流浹背柱嫌。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留屯换,地道東北人编丘。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像彤悔,于是被迫代替她去往敵國和親嘉抓。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容