我有一个问题,移动一个水平滚动视图包含视频帧,与定时器的帮助。问题是,滚动不顺利,你可以看到在视频(下面的链接)。下面给出了我用来移动水平滚动视图的代码:
**`float density = getResources().getDisplayMetrics().density;
final float px = (int) 4 * density;
//4 is in PX here(Pixel)
Log.v("DPPX__", "ORIG PX: " + px);
Log.v("DPPX__", "Converted PX: " + (int) px);
Log.v("DPPX__", "DP: " + 4);
Timer timer = new Timer();
checkingTimer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
horizontalScrollView.smoothScrollBy((int) px, 0);
setCurrentVideoTime();
}
},0,200);//Update text every 200 milliseconds`**
您可能已经从代码中猜到了,我每200毫秒将滚动视图移动4个像素。所以为了使它更平滑,我试着每50毫秒移动1个像素,但是这样做产生的问题是scrollview只接受整数形式的scrolling参数。但是为了在dps中移动scrollview,我必须将像素转换为dp,进行旋转,所以得到的值是float。但是scrollview只接受scrollviewby或smoothscrollby方法中的整数参数。
任何帮助都将不胜感激。谢谢
视频链接:https://youtu.be/gfvsuf6uphi
屏幕的图像
暂无答案!
目前还没有任何答案,快来回答吧!