yii2怎么实现自己的layouts
1个回答
2016-07-31 · 知道合伙人软件行家
关注
展开全部
创建ViewGroup实现类,重写其构造方法,onMeasure, onLayout,实现其ViewGroup.LayoutParams实现类并重写generateLayoutParams方法
自定义子View使用的XML配置项behavior_class,类型为string,并在LayoutParams构造方法里读取该值并构造对应的Behavior实现类
定义抽象Behavior类,添加抽象方法layoutDependsOn,用于返回依赖的对象
通过为ViewTree注册监听来监听界面View的变化
通过实现NestedScrollingParent接口并实现onStartNestedScroll与onNestedScroll方法来监听NestedScrollView子view的滚动事件
在viewtree及scrollview监听事件方法里循环子View,当发现存在behavior_class配置项且依赖对象发生变化时,调用子类上beavior实现的onDepdentViewChanged或onNestedScroll方法
实现自己的layouts
自定义子View使用的XML配置项behavior_class,类型为string,并在LayoutParams构造方法里读取该值并构造对应的Behavior实现类
定义抽象Behavior类,添加抽象方法layoutDependsOn,用于返回依赖的对象
通过为ViewTree注册监听来监听界面View的变化
通过实现NestedScrollingParent接口并实现onStartNestedScroll与onNestedScroll方法来监听NestedScrollView子view的滚动事件
在viewtree及scrollview监听事件方法里循环子View,当发现存在behavior_class配置项且依赖对象发生变化时,调用子类上beavior实现的onDepdentViewChanged或onNestedScroll方法
实现自己的layouts
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询