- 需求的场景描述(希望解决的问题)
目前picker-view只会在滚动后触发change事件, 所以在滚动未结束的时候看到的值都不是真正的值, 会产生不太友好的体验.
滚动到最后一项后, 如需选择第一项, 需要反向滚动回去, 希望可以持续向下(上)滚动
- 希望提供的能力
希望增加可以获取picker-view是否在滚动的方法, 或者可以即时触发change事件
希望增加可以循环滚动的能力
框架类型 | 问题类型 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|
小程序 | 需求 | 客户端 | 6.7.2 | 2.3.0 |
1 个回答
循环应该是可以在 change 时调整 picker-view-column 里的数据顺序来实现的,
至于边滑边变这类交互,不见得就是最佳的体验,且小程序的渲染性能并不见得会高于网页。
change时改变确实可以一定程度做到, 但是如果一次连续滚动的长度超过了每列column的长度(比如是1-2, 我一次滑动很长, 这种情况就不行了).
多列的情况的下更麻烦.
目前我的做法是, 多个picker-view, 每个只有一个picker-view-column, 然后动态替换滚动的picker-view, 来做到连续滚动. 但是觉得很不优雅
对长 column 反而是好做的,因为滑不了那么长就会松手,
反而是只有较少选项时不便做循环,所以对短的不做循环为佳。
啊,突然意识到你说的是什么问题了,是松手后的惯性滑动很远对吧,
不过感觉也还好,视觉上可能会比较诡异,但至少解决了你上述所说从底部返回首部这样的需求。
就算让官方来实现循环,也会碰到同样的考量,所以其实不用太抱有希望。
抱歉,这都是纯口舌之言,下周不妨代码沟通。