关于 ScrollView 中嵌套 EditText,输入多行会使整体滚动的问题
2016-09-28 11:30
253 查看
问题:
ScrollView 中嵌套 EditText,在 EditText 中输入多行,会使 ScrollView 整体滚动。如果下方内容较长,会将 EditText 顶上去,体验不好。
解决:
监听键盘的弹出和收起,在弹出时,移除 EditText 下方的所有 View,使 ScrollView 没有滚动空间;在键盘收起时,将移除的 View 重新添加回来。
注意两个问题:
在 Activity 中,设置
以便使 Layout 在键盘弹出时压缩布局,重新计算布局大小;
监听键盘弹出收起,目前可以使用 Layout 的 ViewTreeObserver.OnGlobalLayoutListener,监听整体的高度变化,设置阈值(键盘高度)来判断。
ScrollView 中嵌套 EditText,在 EditText 中输入多行,会使 ScrollView 整体滚动。如果下方内容较长,会将 EditText 顶上去,体验不好。
解决:
监听键盘的弹出和收起,在弹出时,移除 EditText 下方的所有 View,使 ScrollView 没有滚动空间;在键盘收起时,将移除的 View 重新添加回来。
注意两个问题:
在 Activity 中,设置
this.getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE );
以便使 Layout 在键盘弹出时压缩布局,重新计算布局大小;
监听键盘弹出收起,目前可以使用 Layout 的 ViewTreeObserver.OnGlobalLayoutListener,监听整体的高度变化,设置阈值(键盘高度)来判断。
相关文章推荐
- ScrollView嵌套 EditText,输入多行(足够多的情况)会使ScrollView整体滚动的问题
- 关于EditText与ScrollView嵌套使用时候出现的Edittext自动滚动至最顶部的问题
- ListView、ScrollView中嵌套的EditText不能滚动的问题
- ScrollView中EditText导致自动滚动问题
- 关于EditText输入数字时候限制为一个亿的问题,且保留小数点两位小数
- EditText关于输入小数点的小问题
- 解决EditText多行编辑时在ScrollView中无法滚动的问题
- 解决ScrollView中嵌套EditText时的滑动滚动冲突
- 关于Android中Alertdialog中的EditText输入问题
- 关于EditText的输入小数点计算问题
- 关于EditText的输入数字校验的问题
- NestedScrollView和EditText控件的滚动冲突问题
- 解决ScrollView中嵌套EditText无法滑动的问题
- ScrollView中EditText导致自动滚动问题
- ScrollView和EditText的滚动冲突问题
- 关于editText和scrollView起冲突,editText内容超过编剧不能滑动的问题
- 在ListView中嵌套EditText,EditText内容过多需要滚动的问题
- ListView中嵌套的EditText不能滚动的问题
- 关于TabActivity中的EditText只能填数据不能删数据的问题
- 关于AutoCompleteTextView 为什么必须输入两个字符才能出现补全提示的问题的解决办法