【发布时间】:2016-10-22 13:53:10
【问题描述】:
我正在尝试修改我的搜索栏行为,使其更类似于 iOS 系统,在 iOS 系统中,只要你在 y 坐标中从搜索栏矩形开始,它就会减慢你的搜索进度。当您返回搜索栏时,它会将您的进度缩放更新到您所在的位置,当您触摸搜索栏时,您的搜索栏的 x-swipe / 进度条的比例为 1/1。
我想实现这样的目标:当你在搜索栏上说 50 像素(在 y 方向上)时,我的缩放因子应该是 3/1:当你在 x 方向上移动 3 像素时,你的搜索栏显然,应该根据您的 x 轴符号移动 1 个像素。总而言之,像 ipod 音乐跟踪搜索栏或视频播放器(我认为适用于 Android 的 MX 播放器有我正在寻找的东西)。
有没有办法做到这一点?
我尝试的是覆盖 seekbar.setOnTouchListener,但是从这里我不知道我可以做什么来模拟这样的事情。我认为这与 seekbar.setOnSeekBarChangeListener 相关......我如何覆盖手势检测和进度条计算之间的“链接”,我可以在我的 setOnSeekBarChangeListener.OnProgressChanged 方法中找到相同的进度条?是否有类似 seekbar.setScalingProgressFactor 之类的方法根据 y 坐标沿 x 轴施加 3/1 像素的比例?
我希望我的问题足够清楚。
提前致谢!
【问题讨论】:
标签: android progress-bar custom-controls seekbar