用户触摸图表时获取价值 - Android

时间:2013-01-02 16:49:12

标签: android graph gesture

PIC

(这只是其他应用的截图)

我正在尝试使用http://www.jjoe64.com/p/graphview-library.html

来实现这一目标

我想在用户触摸图表时显示十字准线,并显示该点的X轴值。

1 个答案:

答案 0 :(得分:3)

您需要一种方法将屏幕上的 X-position 转换为图表上的 X-position ,并显示与查找的X对应的Y值在图表中的位置。

我能想到的最简单的方法是获取屏幕的像素宽度(假设您的图形适合整个宽度),并通过在视图中覆盖以下方法来注册触摸事件:

@Override
public boolean onTouchEvent(MotionEvent event)
{
 //TODO get x position tapped on the view and translate to x position on graph
}

在该方法中,您可以获取轻敲的x坐标(来自MotionEvent对象),然后转换为图形的位置。

例如,您可以计算屏幕上点击的百分比(例如屏幕宽度为400px,用户点击300px,即长度的75%)然后通过图表的数据点移动此百分比(通过有序数据集75%)

然后,您可以显示弹出窗口或向onDraw方法添加内容,将数据点添加为小叠加层。

注意:您需要原始数据点来执行查找,除非您要尝试猜测图表的点在y轴上对应的内容...