应用沉浸模式时出现软键盘时,在片段中重叠 EditText 和 Button 上的键盘
Overlapping Keyboard on EditText and Button in fragments when soft keyboard appears when apply immersive mode
我想使用软键盘,但它隐藏了我的 EditText 或按钮,我需要它滚动以便键盘不会隐藏它。它与 Activity 配合使用效果很好,但与 Fragment 配合使用效果不佳。
我正在尝试使用此代码:
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE|WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
}
也试试这个代码:
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
}
有人对 Fragment 有什么建议吗?
在特定 activity
的清单中试试这个
<activity
android:name=".YourActivity"
android:label="@string/app_name"
android:windowSoftInputMode="stateAlwaysHidden|adjustResize/>
或者在 activity
的 oncreate 中
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
我想使用软键盘,但它隐藏了我的 EditText 或按钮,我需要它滚动以便键盘不会隐藏它。它与 Activity 配合使用效果很好,但与 Fragment 配合使用效果不佳。
我正在尝试使用此代码:
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE|WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
}
也试试这个代码:
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
}
有人对 Fragment 有什么建议吗?
在特定 activity
的清单中试试这个<activity
android:name=".YourActivity"
android:label="@string/app_name"
android:windowSoftInputMode="stateAlwaysHidden|adjustResize/>
或者在 activity
的 oncreate 中getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);