I am creating my own Android Keyboard and I would like to add a key that when pressed it will open up the "Input Methods/Keyboards" dialog so I can change the keyboard.
Pretty much the same functionality the default keyboard has which if you hold "space" it will show a popup that allows you to change to other input method.
I haven't been able to find out if there is any predefined class doing such an action. If you can help me I will really appreciate it.
Thanks
Related
I'd like to create custom keyboard in my app. I've found that I should create new Input Method. But I don't know how to set this Method to my EditText and disable standard keyboard. I do not want user to have a possibility to change this keyboard. May I solve this with custom Input Method or should I create keyboard as custom view instead?
But I don't know how to set this Method to my EditText and disable standard keyboard
You can't. The user chooses the input method, because the input method is system-wide.
May I solve this with custom Input Method or should I create keyboard as custom view instead?
Unless you are going to take the time to support all users — the visually impaired, those using a physical keyboard, etc. — you should not do this at all.
Assuming that you are going to handle all users, it would need to be a custom view if you are going to force the user to use it.
I want to press "?123" key programmatically. But I don't know the KEYCODE for this symbol. And I also unable to find it. Can anybody know the KEYCODE for "?123" symbol on Soft Keyboard.
It's not an actual key press.
It's just a way for the user to change the keyboard layout to be able to press on symbols etc.
I think it's not even a guarantee that every keyboard has it. There are many custom keyboards on Android and they can make it any way they want it.
You should think for yourself, what are you actually trying to achieve? to insert a "#" for example? then you should just simulate the keycode for that.
If you want to customize at this point, I think you should create a input method from the beginning, with your own keyboard class and own keyboardView.
This way you can do whatever you want in the keyboard.
How to make a Android custom keyboard?
I know that you can specify a short message input type in order to turn the enter key of the keyboard into an emoji button and pressing it will show up the emoji list but what i want to do is open up the emoji list programatically from a button. Is this possible?
There is no functionality to add tabs to any generic keyboard. Certain keyboards may support it, but it isn't a common feature. You could write your own fully custom keyboard, but that's a lot of work and will piss off many users.
Also, I'm not sure what you mean about by like in hangouts. I use hangouts- it doesn't do anything odd with my keyboard. It stays as Swype, there's no special emoji tab. It may be a feature of your favorite keyboard based on the input type (I assume both use input type textShortMessage). But it isn't a generic feature.
See Link Android Keyboard with Emoji
Thanks and enjoy...
Is there a way to programmatically remove certain keys from the standard software keyboard. By setting some of the input type flags I am so close to having the keyboard I need. From the calling application is there a way to modify the keyboard directly. I know how to make my own custom keyboard but it seems such a waste to remove one button from the standard one.
////// edit///////
I think I found a way around this if any one has tried this method please let me know if it worked for you.
I have going to grab the softKeyboard service and using the start hook the keyboard uses to grab its view object inflate my own and swap them.
From my research there is no way to implement your own custom keyboard from within a single application. If you want to have a custom keyboard you need to create one from scratch and can not use the IME
soft keyboard comes for edit text. you can modify the softkeyboard for that edit text.
For that you need to set inputType and imeOption property of that edit text.
I want to add some buttons on top of the soft keyboard (Enter and Cancel). Is there a nice way to do this or do I have to detect the keyboard being shown and add the buttons into my view?
I can't see the logic your trying to apply here.
if you add buttons above your keyboard then you lose some areas in your keyboard (for example you cant press on q w s a).
I think you should look into creating your own custom keyboard.
maybe this will help
android app specific soft keyboard
Jason
You won't be able to do this, and with good reason. If apps could modify an existing input method like this, they could trivially log all keystrokes on your device without you knowing. If you've ever installed a custom input method, you'll see a big warning that using it means trusting it not to log your keystrokes, and the functionality you're after would totally circumvent that protection.