我的应用程序底部有一个垂直滑动的抽屉。当软键盘打开时,它会把抽屉的标签往上推,所以它位于键盘上方。实际上,我想让它保持在屏幕的底部,当键盘显示时,它会被隐藏起来。

有人遇到过这个问题吗?知道怎么修吗?


当前回答

要在片段中以编程方式完成此工作,您可以使用以下代码

getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

将此放在onResume()中

其他回答

解决这个问题有两种方法。 转到androidmanifest .xml,在你的活动名称中,添加这一行

   android:windowSoftInputMode="adjustPan"

在下面的代码中,我已经添加到注册活动。

 <activity android:name=".Register"
            android:windowSoftInputMode="adjustPan">

在第二种方法中,转到您的活动,并在您的onCreate方法中添加此代码。

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

对于xamarin用户,将以下代码添加到MainActivity类的Activity属性中,

WindowSoftInputMode =Android.Views.SoftInput.AdjustNothing

或者你可以添加这段代码Window.SetSoftInputMode(Android.Views.SoftInput.AdjustNothing)到MainActivity类的OnCreate方法。

android:windowSoftInputMode="stateHidden|adjustNothing"

这段代码可以工作。

当你想隐藏视图时,打开键盘。

将此添加到您的活动清单文件

android:windowSoftInputMode="stateHidden|adjustPan"

将以下代码添加到Manifest文件的“activity”中。

android:windowSoftInputMode="adjustResize"