I use this in a custom view. I must admit that it doesn't always seem to work - as reported by customers - but I've not had it fail for me in testing on a number of devices. I actually found this doing a lot of Google searches myself, so credit/blame goes elsewhere. While you may not need to do all of this exactly, perhaps it will get you a little closer.
public class MyView extends LinearLayout { <snip> public View.OnLongClickListener mLongClickListener = new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { softKeyboardResults rr = new softKeyboardResults(); Configuration config = MyView.this.getResources() .getConfiguration(); if (config.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES || config.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_UNDEFINED) { InputMethodManager imm = (InputMethodManager) MyView.this.mContext .getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(MyView.this, InputMethodManager.SHOW_IMPLICIT, rr); } return false; } }; class softKeyboardResults extends ResultReceiver { public softKeyboardResults() { super(getHandler()); } @Override protected void onReceiveResult(int resultCode, Bundle resultData) { super.onReceiveResult(resultCode, resultData); switch (resultCode) { case InputMethodManager.RESULT_HIDDEN: case InputMethodManager.RESULT_SHOWN: case InputMethodManager.RESULT_UNCHANGED_SHOWN: break; case InputMethodManager.RESULT_UNCHANGED_HIDDEN: InputMethodManager imm = (InputMethodManager) MyView.this.mContext .getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(MyView.this, InputMethodManager.SHOW_FORCED); break; default: break; } } } } Best Regards, Eric -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en