How to Trigger the soft keyboard?

后端 未结 3 439
借酒劲吻你
借酒劲吻你 2021-01-27 13:14

How can I trigger the software keyboard and add listeners to it\'s keys?

相关标签:
3条回答
  • 2021-01-27 14:07

    To display the soft keyboard you might try: InputMethodManager.showSoftInput()

    As for adding listeners, the best you can do is add a TextChangedListener to an EditText to listen to the changes in the EditText view that are made via the keyboard.

    0 讨论(0)
  • 2021-01-27 14:08

    You can do this from your`s AndroidManifest.xml by adding

    <activity
        android:windowSoftInputMode="stateVisible" ... >
        ...
    </activity>
    

    But note: If the user's device has an attached hardware keyboard, the soft input method does not appear. http://developer.android.com/training/keyboard-input/visibility.html

    0 讨论(0)
  • 2021-01-27 14:09

    Ive tried two options, but none of them worked in the emulator, as i said, i am trying to pop up soft keyboard on long-press menu:

    @Override
    
    public boolean onKeyLongPress(int keyCode, KeyEvent event)
    
    {
    
                if (keyCode == KeyEvent.KEYCODE_MENU)
            {
                 showSoftInput.getInputMethodList();
                 showSoftInput.toggleSoftInput(showSoftInput.SHOW_FORCED, 0);
    
                return true;
            }
            return super.onKeyLongPress(keyCode, event);
        }
    

    second option:

    View.OnLongClickListener mLongClickListener = new View.OnLongClickListener()
        {
    
            @Override
            public boolean onLongClick(View v)
            {
    
                Configuration config = RouteMapActivity.this.getResources()
                        .getConfiguration();
                if (config.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES)
                {
                    InputMethodManager imm = (InputMethodManager) RouteMapActivity.this
                            .getSystemService(Context.INPUT_METHOD_SERVICE);
                    imm.showSoftInput(mapView, InputMethodManager.SHOW_IMPLICIT); // .SHOW_FORCED);
                }
                return false;
            }
    
        };
    
    0 讨论(0)
提交回复
热议问题