android - 当应用沉浸式模式时出现软键盘时, fragment 中的 EditText 和 Button 上的键盘重叠

标签 android android-fragments fragment android-softkeyboard

我想使用软键盘,但它隐藏了我的 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 的 list 中尝试此操作

<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);

关于android - 当应用沉浸式模式时出现软键盘时, fragment 中的 EditText 和 Button 上的键盘重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47033425/

相关文章:

android - 如何在Flutter中创建超链接图标?

Android RecyclerView 不会更新数据更改

java - 无法解析符号 'OnSeekBarChangeListener'

android - 替换后的"Kill"fragment

android - 在 LTE 中为安卓应用程序配置 QCI

android - 水平滚动页面中的水平 ScrollView

android - 为什么 onCreate 在我第一次打开 Activity 时在我的 Fragment 中调用了两次

android - 如何在 Recycler.Adapter 上调用 getFragmentManager?

java - 从 Activity 的 fragment 中获取一个按钮

java - 如何从Fragment中调用Fragment以及数据