Android :: How To Know Whether SIP (Soft Input Panel - Keyboard View) Is Showing - Not?
Apr 27, 2009
I wonder it is possible to know whether SIP is showing to user or not. A user application(Activity) can show or hide the Soft Input through the Input Method Manager. There is some APIs to handle the SIP. But I can't find API to know status of SIP(it is on showing or hiding).
When SIP is showing to user. It disturbs the UI of the Activity. So Activity should know about the information related with upper case. How can I know that?
I have a class that extends ImageView, which also handles keyboard input, currently via OnKeyListener, which works great with the 1.1 sdk, but how do I port this to the 1.5 sdk? How do I get the soft keyboard to load for this View? I haven't found a ton of documentation regarding the new input framework.
I am trying to do something that I thought would be simple, yet I still haven't found the right approach. I have a Edit Text field that should only accept unsigned decimal entries. Using android:input Type="number Decimal" in my layout xml file achieves this, however the soft keyboard that is raised with this input Type is the standard keyboard but just uses the alternate view with the number row on top. This is far from ideal for a field that only allows numbers. A much better soft keyboard for numeric entry is the "phone" one. It has all of the numbers and a decimal. Perfect!! Well, except that for the life of me I cannot figure out how to use both the phone keyboard AND allow only numeric entry. I've tried everything I can think of but if I use the phone soft keyboard then the input field also allows things like "(" and any of the other symbols available on that keyboard. Is there any way to get the nice big numeric buttons of the phone keyboard along with only allowing decimal entry? You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to firstname.lastname@example.org To unsubscribe from this group, send email to email@example.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
and also, InputMethodManager imm = InputMethodManager.peekInstance(); Log.d("tag", imm.isFullscreenMode());
My phone is in landscape mode. My application has an EditText. My keyboard(virtual/soft) is not visible. I expect the above codes (written inside TextView.java) to print false. But it prints true. How is that possible?
I have a vertical sliding drawer at the bottom of my app. When the soft keyboard opens, it pushes the tab for the drawer up, so it sits atop the keyboard. I actually want it to remain at the bottom of the screen, becoming hidden when the keyboard is shown.
I've been experimenting with the IMM and it's mostly straightforward, but for some reason, my custom view that launches the soft keyboard works only in portrait mode. Launching it is easy enough: InputMethodManager imm = (InputMethodManager)getContext().getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInputFromWindow(getWindowToken(), InputMethodManager.SHOW_IMPLICIT, 0);
I've seen a couple notes about the soft keyboard only working in portrait but I assume this was a limitation in a previous version, since all the Android EditText views work fine in both portrait and landscape. Is there some additional piece of work needed to enable landscape?
I would like to play around with some ideas and develop a soft keyboard for Android to replace the default one.
Is there any general information about soft keyboard development for Android out there?
Any best practices or guidelines?
Can I do with my keyboard application pretty much anything I could do with a normal Android application? Can I do HTTP connections to synchronize keyboard data with a cloud DB and other phones I have? Can I open other windows/screens from a key press, e.g. to display a custom input interface different to a normal QWERTY one. If that doesn't work, can I use a pop-up dialog instead?
I have a tabbed view with one Activity per tab, and when I switch from the first tab, which has a TextView, to the second tab, which only shows a clickable list, the soft keyboard is still there. I want it to go away.
I tried this:
But this does not work, because there is no relevant view to provide, as there is no View on the screen that takes keyboard input.
In my app I have AutoCompleteTextView and "search" button. When user clicks "enter" or "search" an Intent is fired and new Activity is started. But in that "new" Activity SoftInput should be invisible, so I make ((InputMethodManager)getSystemService (INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(this.getCurrentFocus ().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); But when user clicks BACK and returns to activity with form he is unable to show soft input back by touching AutoCompleteTextView. He mus use trackball to select "search" button and than touch ACTextView. Bud when he is in "form" activity first time, shows soft input by touching AutoCompleteTextView and presses BACK button he is able to show soft Input by touching field. How can I hide soft input "correctly" (so it can be shwed back in intuitive way?) or hide it like BACK button does?
I have just unplugged my phone from charge and checked the usage with Spare parts, Dialer is showing heavy usage in the network usage panel, does anyone know why this is as I haven't made any phone calls?
I got confused about whether the default value for android:windowSoftInputMode was adjustResize or adjustPan and thought I might be able to help someone avoid similar confusion. The "Updating Applications for On-screen Input Methods" blog post states that pan and scan is the default mode because it is the safest for existing applications and resize is often the preferred screen layout. But I believe it's a little more complicated than that.
If the outermost View in a layout is a ScrollView then it appears that the default is actually adjustResize. And this makes sense: if the View lives inside a ScrollView then it probably knows how to resize itself. I'm mostly basing this statement on trial and error, so it would be great if someone could confirm or correct me. Maybe this should be mentioned in the documentation at ? Or state that it is recommended that applications specify one or the other, rather than depending on the default?
I have a layout with a ListView that contains EditText objects that can requestFocus() when the user chooses to edit the list item. I make sure to call setSelection() on the ListView when this happens, and then have the EditText request focus and then use InputMethodManager.showSoftInput to show the soft keyboard. However, when this happens, the list view is being resized correctly, but the selected list item remains below the fold and the user has to scroll up. This is working properly on 2.2, but is failing on 2.1. Any ideas for making sure the list selection remains visible?
I have a custom dialog displayed to input user info (ID). This appears on top of an activity with an 'Done' button, however when the edittext is selected and the soft keyboard appears, the keyboard obscures the Done button at the bottom of the dialog. The documentation / blog posts are a little dry on info specifically for dialogs, what do I need to include to get the dialog to pan up or otherwise?
I'm using an MK802 mini PC. I don't have a USB keyboard yet.
When I plug in a wired USB mouse, I can use that to click on the on screen soft keyboard.
But when I plug in the wireless dongle for a USB mouse, the Android soft keyboard doesn't show anymore (I guess this is because the wireless dongle supports both keyboard and mouse, and tells Android a hardware keyboard is available, so Android doesn't show the soft keyboard).
Any way to ignore this and always show the soft keyboard? Or another keyboard I can download which will always show?
I have a layout which has one large EditText view at the top + a bunch of buttons at the bottom. The EditText is made to shrink and expand when the ime is activated/deactivated by using adjust_resize. The buttons at the bottom are pushed up above the ime.
I would like to hide these buttons when the ime displays, to provide enough space for the EditText view.
I have so far tried the following:
subclassed EditText and provided the activity the option to register a callback on the view's OnSizeChanged. Used this callback to change the visibility of the buttons (actually the layout container) to GONE.
This work OK and does hide the buttons when the ime pops up. However, the EditText does not expand into the new available space. Furthermore, when the ime is disposed off, the EditText field is now bigger than it was originally, pushing (the now showing) buttons outside the screen.
I should also add that when typing the first letter into the view, and the ime displays the word options, the screen is redrawn and the EditText fills the vacant space. how to get this to work? Or even better, is there a simpler solution to my requirement? In my view, scrolling is not a good option.
I have an EditText control that does not pop up the soft keyboard when the user touches it. The thing is, that I have a number of other EditText controls elsewhere in my application that all work fine, and I cannot see anything really different about this one.The code is a bit complex to post here, but I was wondering if anyone knows of any reasons why the soft keyboard would not appear in some cases.
I am interesting in integrating an arabic keyboard to the android system. I proceeded as follows: I have modified the xml and the layout in the package softkeyboard by replacing English letters and their codes by the arabic one.Of cource I created 2 new directories in softkeyboard: xml-ar and layout-ar After rebuilding the system , I don't find the new softkeyboard.
I have One AutocompleTextView and I want to make the virtual keyboard disappear when he hits "DONE" at the AutocompleTextView. So far, the buttons "NEXT"/"DONE" do nothing at all Unfortunately I found no resources addressing this problem.
I've got a problem with my application in that the soft-keyboard is not being closed unless the user pushes the "back" button.I use several layouts which I load using the setContentView method of the application. Some layouts contain multiple EditText fields. The soft-keyboard pops up correctly when the entry boxes are being clicked, but never gets dismissed, even after I switch to a new layout using setContentView (instigated by on-screen push buttons).I found a way of apparently removing the keyboard using the "InputManager" class but how exactly does that work if I don't know which entry field opened/currently owns the keyboard?Is there a way of possibly invalidating a whole layout which would perhaps cause all resources (and hopefully the keyboard) to be cleared? As said before, I currently just use setContentView to load the next screen.
if application has EditText widget and user clicks on it, a qwertysoft keyboard appears. how do you get a numeric, 12key, or phone soft keyboard to appear instead. (I have searched documentation but I cannot find solution.)
How can I set numeric-only soft keyboard option for a text field? When I set the input-type to "number" it brings a soft keyboard which is actually a alpha-numeric one but already switched to numeric mode. What I want is a pure numeric soft keyboard with big numbers (no alphabets at all). I've already seen this in other applications and but don't know how to do it.
I have a form that is working fine with the "Next" flow order when using the computer keyboard with emulator (and probably with the keyboard on the G1) but not with the SoftKeyboard with 1.5.Some fields indicate "Next" with this keyboard, some go to the correct field and others don't.Two of the fields are text and they only give a carriage return instead of "Next."My numeric fields give the proper "Next" key. Use of the SoftKeyboard is a little underdocumented so far (if there is a hidden doc online somewhere please provide me a link to it). There are also some added fields under 1.5 that I have asked about previously but received no answer.These appear to have something to do with the Soft Keyboard.Though these can be set programmatically I haven't seen the proper way to set these flags using XML. This field is the one that replaces "Numeric" which deprecated.
So Sony appears to have included their own IME with their xperia phones.I have an edit box for numerical input that i have specified as number numberDecimal|phone It allows for easy number entry and allows users to enter in decimal numbers.However the IME in the xperia phones is missing the decimal key. Is there a way to specify it should only be using the android IME?Can I specify resources for specific phones similar to how I can control resources for versions of android?
This is probably very easy but I just don't know how to close the Soft Keyboard after user hits "search" key on the soft keyboard.Could someone help me out?Currently my code listens for key press particularly enter or the search key.