我有一个表面视图,我在其上绘制了几个矩形,就像一个条形图。当这个图表增长时,它会变得很大。因为我不能将它放在水平滚动视图中,所以我添加了一个onTouchListener,并希望将其移到侧面。
这是我的代码:
CompassView cv =(CompassView) findViewById(R.id.cv);
mDrawHeight = cv.getHeight();
mDrawWidth = cv.getWidth();
cv.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int x = (int)event.getX();
int y = (int)event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
tvCount.setText(String.valueOf(x));
case MotionEvent.ACTION_MOVE:
tvCount.setText(String.valueOf(y));
case MotionEvent.ACTION_UP:
tvCount.setText(String.valueOf(x+y));
}
return true;}
});
所以现在我可以获得手指开始移动视图的x,并且我可以获得x让它离开的位置。如何将其转换为surfaceView:现在,surfaceView已移动x-start-x-end。并使它保持在新的位置。