1

我正在尝试将Android 的 Dateslider 修改为只是一个时间滑块。

我把它减少到

在此处输入图像描述

我想要的是当时间是“17:00”时,17 应该在中间而不是向右一点。

基本上我想要的是在选择的时间放置一个指针。像这样放在中间会更容易

在此处输入图像描述

所以我的问题是向已经使用过这个库的人提出的。比我更了解它,可以在这里帮助我。

PS:我相信它与ScrollLayout.java

4

1 回答 1

0

好的,我明白了,当前算法将当前时间滚动到中间。但有趣的部分是当前时间视图是 90(根据屏幕乘以 dp 因子),因此它滚动到时间视图的中间,因此粗体显示的时间显示在右侧。所以我们需要滚动一个额外的 "objWidth/2" 。简而言之,修改这 2 行ScrollLayout.java

在 setTime() 函数中

int left = (getChildCount()/2)*objWidth-getScrollX()

修改int left = (getChildCount()/2)*objWidth-getScrollX()+objWidth/2;

在 reScrollTo() 函数中[接近尾声]

int left = (getChildCount()/2)*objWidth-scrollX;

修改int left = (getChildCount()/2)*objWidth-scrollX+objWidth/2;

然后只需将您的指标放在 displayWidth/2

于 2013-05-06T14:23:14.807 回答