Prevent UIKeyboard from showing on UISearchBar tap - iphone

I have my own custom keyboard in a uiview which i'm adding to the UIWindow in certain situations.
I switch between standard UIKeyboard and my custom keyboard with a button.
Problem: when i have my custom keyboard already shown on screen and i tap the UISearchBar i get the standard UIkeyboard shown above mine.
What I expect is to supress showing of Sandard UIKeyboard when i have my custom one already showing on screen.
I intercept keyboardwillshow event but it seems at this event is too late to do that.
I also tried subclassing UISearchBar and get control over its UITextField to get the Shouldbegintextediting but it doesn't seem to work ... (FYI UISearchBar doesn't have shouldbegintextediting event in the protocol. Its only for uitextfiled).
Also, there is no such thing as 'inputView' property in UISearchBar.
I tested this on iOS 5.1.
Anyone with experience on this kind of issue?
Thank you.

Set the inputView of the search field to your custom keyboard.

Related

UIMenuController not showing UIPasteBoard is cleared iPhone app?

Am working in message based iPhone application. In my application looking like iMessage native iOS app. I made Bubbles with used UIImageView and UILabel. I made UILabel as clickable and showing Copy option. It is working fine when the message input UITextView is not in active.
1. I can show the "Copy" option when we clicking UILabel and the UITextView is not becomeFirstResponder.
2. When the user clicking the MessageTextView (UITextView) from the bottom of the screen the UITextView becoming first responder and keyboard is showing now. In this scenario if the user clicking the messabe bubble (UILabel) the UIMenuItem showing "Paste" on the bubble instead of "Copy".
3. If i click "Paste" from the bubble UIMenuItem already copied text will be pasting in UITextView. So the control fully in UITextView UIMenuController not activated in UILabel. So i cleared the text from UIPateBoard when the user clicking the Bubble (UILabel).
4. Now the UIMenuController not showing up even [self becomeFirstResponder]; not becoming in UILabel class.
The reason is when the UITextView is in becomeFirstResponder the control fully in that. not coming to UILabel. Could you please help me on this.
How to show UIMenuItem "Copy" when the user clicking UILabel if the keyboard is in visible the control is in UITextView? Could you please help me on this. I spent two days in this issue. Thanks in advance.
May be I am wrong.CONSIDER THIS ANSWER AS A COMMENT.
I tried to achieve like what you are trying to do. Thats not working too. I figured out I cannot make access the two views at the same time. Especially when I have any view becomeFirstResponder and you cannot access menu items of other view.
But if you try like this,you may succeed in your code.
1) In the touchesBegan: method, find the user touching inside your UILabel.
2) If that happens, then show a custom view with buttons like copy,paste and select like that.

UISearchbar: Diplaying last inputs

I have a UISearchbar in my application and would like to have a popover when typing text that shows me the last search-inputs. Do I have to implement this by myself, or is this included in the UISearchbar and needs to be activated?
You will need to implement this yourself

Remove keyboard or place Picker View on TOP of keyboard

Anyone has any idea how one can achieve the same look as when you press on the "From:" in the Mail iphone app when you have more than one user account.
I'd like to remove my keyboard, but WITHOUT animating it. Rather just disappear and instead of it have a UIPickerView appear.
Thanks much!
Since iOS 3.2 you can set the inputView property of a UITextField to a custom view. This view is then shown instead of the keyboard as input for that view.
There's no way to achieve this before iOS 3.2 I know.
UITextField Class Reference

Non-modal iOS keypad interface

Is it known how to get the keypad interface from the Phone and Skype apps? This is distinct from the modal keypad view that appears when a UITextField becomes the first responder.
Is this just a UIView that the developers of Skype laid out themselves in IB, complete with custom graphics to get the square shape of each button? Or is there some standard Cocoa Touch way to do it?
This isn't something that Cocoa Touch provides out of the box, no. I would imagine that the iPhone keypad is a set of UIButton objects arranged like a keypad and using custom graphics to get the visual appearance. This should be fairly easy to do in Interface Builder.
You may be looking for UIKeyboardType in the protocol UITextInputTraits, which is implemented by UITextField etc.. See the documentation at that link.
I was getting confused by your question too. I'm not aware of any but seeing as you would need somewhere to type in anyway wouldn't it be better to make the UITextField active on viewWillAppear and turn off touches on the rest of the view hence showing the keypad like the phone app?

UICatalog and Keyboard Events

The latest version of Apple's UICatalog example application includes zero code in the TextFieldController for handling keyboard show/hide events, and yet the table view still slides up and down beautifully with the keyboard.
Does anyone know what the new trick is? Are there settings in the XIB that allowed them to forgo registering for the notifications or using TextField delegate methods?
The TextViewController still uses keyboard notifications to deal with view sliding, so I'm really confused as to why this isn't included for TextFields anymore.
Thoughts?
You can close the keyboard, if it's open by calling:
[sender resignFirstResponder];
Not sure about opening the keyboard however.
The trick is hidden within calling becomeFirstResponder on a UITextField that is in a scrollable view. Apparently, whenever calling [textField becomeFirstResponder], iOS automatically scrolls the parent view until said textField is visible.
This behavior can actually be undesirable in some cases, as it will not usually scroll to the same location that the UIScrollView method scrollRectToVisible:animated: would if you were to try to do things that way.
Thanks for your thoughts everyone!