ScrollView嵌套RecyclerView、ScrollView嵌套Listview、ScrollView嵌套各种布局,默认不在顶部和回到顶部的解决方法;
如果:
ScrollView.scrollTo(0,0);
ScrollView.fullScroll(View.FOCUS_UP) ;
ScrollView.smoothScrollTo(0, 0);
这三种方法都解决不了你的问题,那么请往下看;
布局有点复杂:
最外层是SwipeRefreshLayout嵌套ScrollView再嵌套LinearLayout再嵌套RecyclerView的;因为布局比较复杂,布局的位置还要求用户自己可以调整,使用的是LinearLayout动态添加View的方式,ScrollView让其可以滚动,SwioeRefreshLayout可以让界面下拉刷新;
但是功能都完成时发现ScrollView默认不在顶部;
1、设置了ScrollView.smoothScrollTo(0, 0);后默认在顶部了,但是用户调整布局后,我再动态添加后刷新一下布局ScrollView就又不在顶部了;我又在用户调整布局后,重新调用了一遍ScrollView.smoothScrollTo(0, 0);偶尔还是不在顶部;
2、我使用下面这种方法设置后,还是偶尔不能回到顶部;Handler的方法也是用过了,都不好用;
scrollView.post(new Runnable() {
@Override
public void run() {
scrollView_Owner.smoothScrollTo(0, 0);
}
});
3、我在ScrollView的外层布局(SwipeRefreshLayout)设置:
android:focusable="true"
android:focusableInTouchMode="true"
然后再RecyclerView的外层布局(LinearLayout)设置:
android:descendantFocusability="blocksDescendants"
完美解决!!!
有空来写一下LinearLayout动态添加布局;
附上代码:
<com.saicmaxus.common.widget.VpSwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/mSwipeRefresh_Owner"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="true"
android:focusableInTouchMode="true"
tools:context="com.saicmaxus.maxuslife.fragment.OwnerFragment2">
<!--
解决srcollView不在顶部的问题
android:focusable="true"
android:focusableInTouchMode="true"
-->
<ScrollView
android:id="@+id/scrollView_Owner"
android:scrollbars="none"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/llOwner"
android:descendantFocusability="blocksDescendants"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<!--
解决srcollView不在顶部的问题
android:descendantFocusability="blocksDescendants"
-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"> <include
layout="@layout/view_is_not_owner"/>
</RelativeLayout>
</LinearLayout>
</ScrollView>
</com.saicmaxus.common.widget.VpSwipeRefreshLayout>
ScrollView嵌套RecyclerView、ScrollView嵌套Listview、ScrollView嵌套各种布局,默认不在顶部和回到顶部的解决方法;的更多相关文章
- listview点击控件显示EditText,键盘弹出消失的解决方法:
1.软键盘弹出后消失解决方法 AndoridManifet 在activity中添加: android:windowSoftInputMode="adjustPan" 2.使用方式 ...
- [Android Pro] ScrollView嵌套RecyclerView时滑动出现的卡顿
reference to : http://zhanglu0574.blog.163.com/blog/static/113651073201641853532259/ ScrollView嵌套Rec ...
- Scrollview 嵌套 RecyclerView 及在Android 5.1版本滑动时 惯性消失问题
标签:scrollview android 滑动 嵌套 scrollview 嵌套recyclerview 时,recyclerview不显示,这就需要我们自己计算recyclerview ...
- ScrollView嵌套recyclerView出现的滑动问题
记得以前在解决scrollView与ListView嵌套问题时,那个时候是自定义了listView去测量listView高度,今天项目中刚 好碰到了要用recycerView,同样也是嵌套在scrol ...
- 解决Scrollview 嵌套recyclerview不能显示,高度不正常的问题
我们先看一个效果,问题说的就是中间的Grid效果在Scrollview 嵌套recyclerview显示问题,在Android Api 24是好的,不过在5,1,1版本(api 22)缺出现了问题 最 ...
- scrollview嵌套下拉控件嵌套recyclerview(不动第三方原基础自定义)
相信会碰到很多类似的需求,一个列表控件,然后控件上方的一个头部需要自定义,这样就不好有时候也不能加在列表控件的头部了,那必须得嵌套一层scrollview了,没毛病,那么一般的列表控件都是有上拉下拉的 ...
- Android在开发中的使用技巧之解决ScrollView嵌套RecyclerView出现的系列问题
根据已上线的app里总结出来的实用小技巧 相信大家都遇到过ScrollView嵌套RecyclerView或者RecyclerView嵌套RecyclerView来使用, 也会遇到一堆奇奇怪怪的问题, ...
- 关于ScrollView嵌套RecyclerView出现item显示不全的问题
最近使用ScrollView时,发现里面嵌套Listview显示不全,试过重写Listview的onMeasure(),并没有起作用.然后将ListView换成RecyclerView后,高度还是显示 ...
- Android 解决ScrollView嵌套RecyclerView导致滑动不流畅的问题
最近做的项目中遇到了ScrollView嵌套RecyclerView,刚写完功能测试,直接卡出翔了,后来通过网上查找资料和 自己的实践,找出了两种方法解决这个问题. 首先来个最简单的方法: recyc ...
随机推荐
- mysql查询各个知识点
临时表 group by http://www.ywnds.com/?p=10174 https://blog.csdn.net/wuseyukui/article/details/72627667 ...
- hadoop行业技术创新解决方案
如今有很多公司都在努力挖掘他们拥有的大量数据,包括结构化.非结构化.半结构化以及二进制数据等,来探索对数据的深入利用. 大多数公司估计他们只分析了已有数据的12%,剩余88%还没有被充分利用.大量的数 ...
- new和delete重载
1. 简介 new/delete关键字,其本质是预定义的操作符,因此支持重载 默认new和delete的行为: new: ①获取内存空间(默认为堆空间):②在获取的空间中调用构造函数创建对象 d ...
- 基于openresty的https配置实践
最近机器人项目的子项目,由于和BAT中的一家进行合作,人家要求用HTTPS连接,于是乎,我们要改造我们的nginx的配置,加添HTTPS的支持. 当然了,HTTPS需要的证书,必须是认证机构颁发的,这 ...
- GTP+SDI工程播出部分思路整理(3)
GTP+SDI工程播出部分思路整理(3) 1.本文的目的主要分析video_out_to_sdi模块中输入信号 tx_usrclk, rst, tx_mode, tx_level_b的使用 Tx_us ...
- DEBUG模式详解
1. 如果开启了DEBUG模式,那么以后我们修改了Django项目的代码,然后按下ctrl+s,那么Django就会自动的给我们重启项目,不需要手动重启.2. 如果开启了DEBUG模式,那么以后Dja ...
- DataGridView之DataError
解决思路一: private void dgvChargeList_DataError(object sender, DataGridViewDataErrorEventArgs e) { bool ...
- 关于PHP程序员技术职业生涯规划 转自 韩天锋
转自 http://rango.swoole.com/ 看到很多PHP程序员职业规划的文章,都是直接上来就提Linux.PHP.MySQL.Nginx.Redis.Memcache.jQuery这些, ...
- Spring Boot下Druid连接池+mybatis
目前Spring Boot中默认支持的连接池有dbcp,dbcp2, hikari三种连接池. 引言: 在Spring Boot下默认提供了若干种可用的连接池,Druid来自于阿里系的一个开源连 ...
- 面试总结之PYTHON
source code https://github.com/haoran119/interview/tree/master/interview%20summary%20of%20python [ZZ ...