Android问题:ScrollView默认位置不是最顶部最全解决方案
2017-08-09 13:23
351 查看
http://blog.csdn.net/jiaoyaning1210/article/details/51084246
描述:
Scrollview里面嵌套了一个listview ,这是开发中最寻常的一种布局,遇到的问题是:在这个Scrollview页面默认的起始位置不是最顶部,而是listview的底部。原因:
在Activity计算窗口的高度时,是在listview没有填充数据时候就完成的,由于ScrollView嵌套listview时没有指定高度,所以ScrollView就会按照layout中定义的默认高度计算。因为listview获取了焦点。
解决:
myScrollView.smoothScrollTo(0,20);需在listview数据加载完成后调用
在代码里去掉listview的焦点
lv.setFocusable(false);
Listview外套一层LinearLayout
跟EditText一样,在父元素的属性下面下下面这两行即可
android:focusableInTouchMode=”true”
android:focusable=”true”
最开始的时候让最上面其中一个控件获得焦点,滚动条自然就到顶部去了,如下:
txtBaseMsg.setFocusable(true);
txtBaseMsg.setFocusableInTouchMode(true);
txtBaseMsg.requestFocus();
相关文章推荐
- Android问题:ScrollView默认位置不是最顶部最全解决方案
- Android 使用ScrollView 默认位置不是最顶部的解决方案
- Android中ScrollView和ListView嵌套使用时,进入界面不是从起始位置也即是不是从顶部显示问题
- ScrollView默认位置不是最顶部最全解决方案
- ScrollView嵌套ListView默认位置不是最顶部的解决方案
- ScrollView默认位置不是最顶部最全解决方案
- android 跳转到嵌有scrollview的页面,scrollview初始位置不是置顶的问题
- 打开套有 ListVew的 ScrollView的页面布局 默认 起始位置不是最顶部
- 解决ScrollView起始位置不是最顶部问题的3套方案
- Android ScrollView嵌套Viewpager嵌套ListView切换时到顶部或位置改变问题解决
- Android:解决打开activity之后 屏幕初始位置不是顶部问题
- Android:ScrollView起始位置不是最顶部
- Android之如何解决ScrollView起始位置不是最顶部的解决办法
- 处理ScrollView内嵌ListView起始位置不是顶部问题
- 笔记之解决ScrollView起始位置不是最顶部的问题
- ScrollView起始位置不是最顶部的解决办法
- ScrollView嵌套ListView,GridView起始位置不是顶部
- Android在ScrollView中嵌套ViewPager以及ListView的可能出现的问题以及解决方案
- ScrollView 中嵌套 GridView 导致 ScrollView 默认不停留在顶部的解决方案和分析
- android 中的 scrollView 控件的默认位置和子控件的焦点冲突