Ale*_*kov 602
您只需将活动的切换windowSoftInputMode
标志adjustPan
在AndroidMainfest.xml
您的活动标签内的文件.
查看官方文档以获取更多信息.
<activity
...
android:windowSoftInputMode="adjustPan">
</activity>
Run Code Online (Sandbox Code Playgroud)
Dan*_*las 165
这些答案都没有对我有用,但是这样做了:
android:windowSoftInputMode="adjustNothing"
Run Code Online (Sandbox Code Playgroud)
Art*_*kii 77
在我的情况下,按钮被推高的原因是因为它们上方的视图是一个ScrollView
,并且无论android:windowSoftInputMode
我设置的是什么值,按钮都被推到键盘上方.
通过设置android:isScrollContainer="false"
在ScrollView
按钮上方的按钮,我能够避免我的底部按钮被软键盘向上推.
Dom*_*Dom 64
您可以尝试动态添加此属性,方法是将以下代码放在onCreate
您的活动方法中:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
Run Code Online (Sandbox Code Playgroud)
这对我有用,而不是:
android:windowSoftInputMode="adjustPan"
Run Code Online (Sandbox Code Playgroud)
didnt.
ama*_*Bit 37
这些答案对我没有帮助.所以我尝试了这个:
android:windowSoftInputMode="adjustResize"
Run Code Online (Sandbox Code Playgroud)
这就像一个魅力,现在我的应用程序的标题不会消失.它更顺畅.
Cha*_*raM 12
要以编码方式在片段中执行此操作,您可以使用以下代码
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
Run Code Online (Sandbox Code Playgroud)
把它放在onResume()中
只需添加一行......
添加android:windowSoftInputMode="stateHidden|adjustPan"
您所需的活动manifest file
.
我刚刚解决了:) :)
对于未来的读者.
我想要对这个问题进行具体控制,所以这就是我所做的:
从片段或活动中隐藏其他视图(键盘启动时不需要),然后将其还原以解决此问题:
rootView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
Rect r = new Rect();
rootView.getWindowVisibleDisplayFrame(r);
int heightDiff = rootView.getRootView().getHeight() - (r.bottom - r.top);
if (heightDiff > 100) { // if more than 100 pixels, its probably a keyboard...
//ok now we know the keyboard is up...
view_one.setVisibility(View.GONE);
view_two.setVisibility(View.GONE);
}else{
//ok now we know the keyboard is down...
view_one.setVisibility(View.VISIBLE);
view_two.setVisibility(View.VISIBLE);
}
}
});
Run Code Online (Sandbox Code Playgroud)
对于xamarin用户,将此代码添加到MainActivity类的Activity属性中,
WindowSoftInputMode =Android.Views.SoftInput.AdjustNothing
Run Code Online (Sandbox Code Playgroud)
或者您可以将此代码添加Window.SetSoftInputMode(Android.Views.SoftInput.AdjustNothing)
到MainActivity类的OnCreate方法.
小智 7
到目前为止,答案并没有帮助我,因为我在textView下面有一个按钮和一个textInput字段(并排),它一直被键盘隐藏,但这解决了我的问题:
android:windowSoftInputMode="adjustResize"
Run Code Online (Sandbox Code Playgroud)
android:windowSoftInputMode="stateHidden|adjustNothing"
Run Code Online (Sandbox Code Playgroud)
此代码有效。
小智 6
将以下代码添加到Manifest文件的"活动"中.
android:windowSoftInputMode="adjustResize"
Run Code Online (Sandbox Code Playgroud)
小智 6
这是最适合我的
android:windowSoftInputMode="adjustNothing"
Run Code Online (Sandbox Code Playgroud)
试试吧!
好吧,我已经看过这些答案,但就我而言,我遇到了同样的问题,并通过一个非常方便且最简单的解决方案获得了庇护,该解决方案涉及在 xml 文件中的 Scrollview 标记中放置一个非常小的无辜属性。那是
android:isScrollContainer="false"
Run Code Online (Sandbox Code Playgroud)
祝你好运!
这个为我工作
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
263239 次 |
最近记录: |