diff --git a/android/src/main/java/im/shimo/react/keyboard/KeyboardView.java b/android/src/main/java/im/shimo/react/keyboard/KeyboardView.java index 07c6e9b..92d995c 100644 --- a/android/src/main/java/im/shimo/react/keyboard/KeyboardView.java +++ b/android/src/main/java/im/shimo/react/keyboard/KeyboardView.java @@ -206,7 +206,7 @@ public void setHideWhenKeyboardIsDismissed(boolean hideWhenKeyboardIsDismissed) } - public void setKeyboardPlaceholderHeight(int keyboardPlaceholderHeight) { + public void setKeyboardPlaceholderHeight(int keyboardPlaceholderHeight) { if (AdjustResizeWithFullScreen.getKeyboardHeight() == 0) { mKeyboardPlaceholderHeight = (int) (keyboardPlaceholderHeight * mScale); } @@ -223,8 +223,19 @@ public void setKeyboardPlaceholderHeight(int keyboardPlaceholderHeight) { receiveEvent(Events.EVENT_SHOW); } } else if (mCoverView != null && !mContentVisible && !mHideWhenKeyboardIsDismissed && keyboardPlaceholderHeight == 0) { - keepCoverViewOnScreenFrom(AdjustResizeWithFullScreen.getUseBottom(), 0); - mCoverView.setVisibility(VISIBLE); + View viewGroup = mCoverView.getChildAt(0); + while (!(viewGroup instanceof EditText) && ((ViewGroup) viewGroup).getChildCount() > 0) { + viewGroup = ((ViewGroup) viewGroup).getChildAt(0); + } + if (viewGroup != null && viewGroup instanceof EditText) { + if (!viewGroup.isFocused()) { + keepCoverViewOnScreenFrom(AdjustResizeWithFullScreen.getUseBottom(), 0); + mCoverView.setVisibility(VISIBLE); + } else { + //输入法弹不出来的bug + KeyboardUtil.showKeyboardOnTouch(viewGroup); + } + } } }