我的布局如下:
<ScrollView ...>
<LinearLayout...>
<EditText
..../>
</LinearLayout>
</ScrollView>
片段加载后,我们设置EditText的焦点,以便显示Keyboard。
我们还设置了背景:
mParent = inflater.inflate(R.layout.sample_layout, container, false);
mParent.setBackgroundResource(R.drawable.sample_bg);
问题是当显示键盘时背景调整大小或键盘按下背景图像。
mEdTxt.requestFocus();
InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(mEdTxt, InputMethodManager.SHOW_IMPLICIT);
mEdTxt.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
}
}
});
我们尝试过:
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
我看到很多帖子对此很有帮助,但没有帮助我。
编辑:问题不重复
怎么样?
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
以上代码将禁用滚动条。
我们需要显示键盘以及存在的滚动条,以便用户可以在显示键盘时滚动页面。
我希望它清楚。
答案 0 :(得分:0)
听起来像你的Manifest中的Activity节点:
android:windowSoftInputMode="adjustResize"
如果您不想让它调整大小,请删除它或将其更改为其他内容。
http://developer.android.com/guide/topics/manifest/activity-element.html