laya用panel实现拖动效果(拉地图效果)

版权声明:转载注明出处 https://blog.csdn.net/qq_22794043/article/details/83514215

layabox最常见的拖动效果是用list实现的,但是也可以用panel实现,并且,panel组件的功能之一就是用来实现拖动的,不存在说panel比list实现拖动更好。

用panel实现拖动时,需要给panel添加子容器,例如box,然后再往子容器box中添加想要滑动的内容,在box尺寸内的可见,在box外的不可见,通过设置panel的scrollbar的value值,还可以控制滑动以及设置box的width或者height实现控制可滑动区域的尺寸。

游戏中常见的拉动地图,就是采用panel(其它游戏也可以用类似的策略)实现的,UI中写入一整张图片(尺寸肯定是超过显示区域尺寸的),玩家拉动屏幕就可以达到拉动地图的效果

根据panel的scrollbar的value值进行某些设置时,scrollBar滑倒末尾时,仍然会继续触发event.change事件,在仍然能够触发event.change事件的这段时间内,如果对scrollBar的value值进行操作,可能会产生BUG。

可以采取的做法是,当scrollbar的value值满足某些条件时,执行stopScroll()停止滑动

猜你喜欢

转载自blog.csdn.net/qq_22794043/article/details/83514215
今日推荐