OS development often use the input box, by default, click on the input box will pop up the keyboard, but you must implement the input box to return the delegate method to cancel the keyboard display, for the user experience is very unfriendly, we can achieve click outside the keyboard blank area to hide the keyboard, Below I have summed up several ways to hide the keyboard:
Let's start by explaining two ways you can hide your keyboard:
1. [View Endediting:yes] This method allows the entire view to cancel the first responder, thus allowing the keyboard of all controls to be hidden.
2, [textfiled Resignfirstresponder] This is more commonly used to let a textfiled keyboard hidden.
Here are a few ways to achieve this:
The first: Use the view's Touchesbegan: Touch event to hide the keyboard, which triggers the event when the view area is clicked.
-(void) Touchesbegan: (Nsset *) touches withevent: (uievent *) event{ [textfiled resignfirstresponder]; }
The second type: Create a custom touch gesture to hide the keyboard:
-(void) viewdidload { [super viewdidload]; Uitap *tap = [[Uitap alloc] initwithtarget:self action: @selector (keyboardhide:)]; Set to No to indicate that the current control is propagated to other controls when it responds, by default yes. Tap.cancelstouchesinview = NO; Add touch events to the current view [Self.view Addgesturerecognizer:tapgesturerecognizer]; } -(void) Keyboardhide: (uitap*) tap{ [textfiled resignfirstresponder]; }
The Third Kind: Modify the custom class of UIView in Xib to Uicontrol,uicontrol is a kind of common control such as UIButton's parent class, is UIView's derived class, implements the touch and the down-pressing encapsulation.
1, first set xib in the UIView custom class for Uicontrol
2, set the relationship event, drag the Xib UIView into the. h zone
set the event to touch up Inside
3. Write Hidden code:
-(Ibaction) TouchView: (ID) Sender { [self.view endediting:yes]; }
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
iOS development There are several ways to hide a virtual keyboard in a blank place: