如圖,uitext喚起鍵盤,需要整個工具條隨著鍵盤彈起而移動。
就是修改底部工具條的約束。
/**
* 工具條底部約束
*/@property (weak, nonatomic) iboutlet nslayoutconstraint *bottomconstraint;
在viewdidload
方法裡註冊鍵盤frame改變的通知:
// 鍵盤通知
[[nsnotificationcenter defaultcenter] addobserver:self selector:@selector(keyboardwillchnageframe:) name:uikeyboardwillchangeframenotification object:nil];
該通知會呼叫的方法keyboardwillchnageframe:
,這個方法裡修改約束:
- (void)keyboardwillchnageframe:(nsnotification *)note
];}
當然,註冊了通知,要注意銷毀是個好習慣。
/**
* 控制器銷毀時呼叫
*/- (void)dealloc
最後看演示效果
iOS 鍵盤顯示與隱藏
目前我所接觸到的鍵盤處理方法有兩種,第一種是通過約束,第二種是通過transform。監聽鍵盤通知 void viewdidload void dealloc pragma mark 鍵盤處理 void keyboardwillshow nsnotification note void keyboa...
顯示和隱藏軟鍵盤
1 方法一 如果輸入法在視窗上已經顯示,則隱藏,反之則顯示 inputmethodmanager imm inputmethodmanager getsystemservice context.input method service imm.togglesoftinput 0,inputmetho...
Android鍵盤的顯示與隱藏
1 自動顯示 inputmethodmanager imm inputmethodmanager getsystemservice context.input method service boolean isopen imm.isactive isopen若返回true,則表示輸入法開啟 2 強制...