有个关于复写源码的问题纠缠我很久,希望能有大神帮忙解答
android开发吧
全部回复
仅看楼主
level 1
小Kongdy 楼主
最近想写一个具有双向无限瀑布流效果的scrollview,想挖的深一点,复写一个官方的scrollview,集成frameLayout开始写,滑动一些功能都集成好了,这些也是比较容易的,但是有个问题,这个控件里面的布局高度必须给定,也就是说比给定一个超过屏幕高度的值或者接近自己高度的值,或者说必须在onMeasure里面计算,但是scrollview源码里面onMeasure和其他measureChild方法里面并没有这一部分,只有fillviewPort这一部分,然后在不给定或计算高度的情况下,滑动的时候,getScrollRange方法会直接判断当前已经到达顶部或者底部,无法滑动,修改限制强制滑动的话,滑出来的部分全是空白,根本没有加载出来,另外,onMeasure计算高度的话,会影响到父布局高度,导致在计算子控件是否在父布局里面到达顶部或者底部产生问题。求助大神解答,不知道我的理解是否正确。
2016年04月19日 06点04分 1
level 1
小Kongdy 楼主
我说的更直白点吧,为什么官方的scrollview的子控件写warp_content可以滑动,我写的scrollview,子控件为什么就要给一个死高度才能往下画,使用warp_content根本滑不了
2016年04月19日 08点04分 3
1