【发布时间】:2012-07-04 21:08:31
【问题描述】:
我有一个Fragment(兼容版本),其布局中有一个EditText。我正在使用ViewFlipper 在片段之间翻转。当我到达这个特定的Fragment 时,软键盘会自动打开。这不是我想要的。这是我试图阻止或隐藏它的原因。
试过了:
android:descendantFocusability="beforeDescendants"
在片段的主视图上
试过了:
android:windowSoftInputMode="stateHidden"
和
android:windowSoftInputMode="stateAlwaysHidden"
在活动清单中
试过了:
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mViewPager.getChildAt(position).getWindowToken(), 0);
在我的 ViewPager 的 OnPageChangeListener 上
试过了:
InputMethodManager imm = (InputMethodManager)mContext.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(voucherView.findViewById(R.id.redeem_mobile_number).getWindowToken(), 0);
在我的 Fragment 中的 onCreateView 中
试过了:
InputMethodManager imm = (InputMethodManager)mContext.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getView().findViewById(R.id.redeem_mobile_number).getWindowToken(), 0);
在我的 Fragment 中的 onStart 中
试过了:
voucherView.findViewById(R.id.redeem_mobile_number).clearFocus();
在我的 Fragment 中的 onCreateView 中
在我看来 onPageChangeListener 是这样做的地方,因为其他调用发生在软键盘实际打开之前。任何帮助都会很棒。
【问题讨论】:
-
在片段中隐藏键盘尝试: InputMethodManager imm = (InputMethodManager) getSherlockActivity().getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(inputSearch.getWindowToken(), 0); P.S inputSearch 是 EditText 字段
-
嗨@Mike T,在我的情况下,当软键盘弹出选项卡也移动到键盘顶部时,我正在使用带有viewpager的tablayout以及5个片段页面,我尝试了上面提到的所有内容,但我仍然没有得到答案..请帮助我
-
@Vijaykumar 如果我在下面的回答没有帮助,那么我就没有主意了。对不起
标签: android