我有<条码>FragmentActivity,使用<条码>ViewPager,为几块碎片服务。 每一条均为<代码>ListFragment,具体如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="8dp">
<ListView android:id="@id/android:list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<EditText android:id="@+id/entertext"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
软键盘在开始活动时就显示了这一点。 为了纠正这种情况,我做了以下工作:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//Save the container view so we can access the window token
viewContainer = container;
//get the input method manager service
imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
. . .
}
@Override
public void onStart() {
super.onStart();
//Hide the soft keyboard
imm.hideSoftInputFromWindow(viewContainer.getWindowToken(), 0);
}
我将登入的<条码>意见组集装箱条码>参数从<条码>中删除,作为主要活动进入窗户的途径。 这行不出错,但键盘从<条码>上隐蔽。
最初,我尝试使用过时布局而不是container
,即:
imm.hideSoftInputFromWindow(myInflatedLayout.getWindowToken(), 0);
但是,这rew改了<条码>NullPointerException,大概是因为碎块本身是一种活动,没有独一无二的窗口?
是否有办法将软键板从碎块中隐藏起来,或者我是否应当在