我希望在触摸图表区域的位置显示垂直光标.与此行关联的文本视图将显示该栏的值,其中的点的y轴值.当我将手指向左移动同时保持我的手指向下[左移或右移]时,此垂直光标将相应地移动,并且文本视图也会跟随,但在此处显示y轴值.移动时的新位置.
我看到GraphicalView有一个touchlistener,我可以注册以获得回调 - 但我从此以后如何使用它是无能为力的.我可以设法将touchevent与某种gesturelistener联系起来.但是,如何绘制叠加在当前图表顶部的垂直光标线?
我有的其他问题是,在onTuuch中返回一个true时我无法获取mChart.getCurrentSeriesAndPoint()的值; ,总是返回Null,但如果我将返回值更改为False,我可以获取值,但我无法再次访问ontuch.
这是我的代码
mChart.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_CANCEL) {
dataset.removeSeries(dataset.getSeriesCount()-1);
multiRenderer.removeSeriesRenderer(GraficaCuatro);
}
if (event.getAction() == MotionEvent.ACTION_DOWN) {
multiRenderer.setPanEnabled(false);
multiRenderer.setZoomEnabled(false);
SeriesSelection seriesSelection = mChart.getCurrentSeriesAndPoint();
if(seriesSelection != null)
{
Toast.makeText(
getActivity().getBaseContext(),"Hola",
Toast.LENGTH_SHORT).show();
}
XYSeries Line = new XYSeries("");
Line.add(event.getX()/1.5,minValue);
Line.add(event.getX()/1.5,maxValue);
dataset.addSeries(Line);
multiRenderer.addSeriesRenderer(GraficaCuatro);
}
if (event.getAction() == MotionEvent.ACTION_MOVE) {
dataset.removeSeries(dataset.getSeriesCount()-1);
multiRenderer.removeSeriesRenderer(GraficaCuatro);
XYSeries Line = new XYSeries("");
Line.add(event.getX()/1.5,minValue);
Line.add(event.getX()/1.5,maxValue);
dataset.addSeries(Line);
multiRenderer.addSeriesRenderer(GraficaCuatro);
}
if (event.getAction() == MotionEvent.ACTION_UP) {
dataset.removeSeries(dataset.getSeriesCount()-1);
multiRenderer.removeSeriesRenderer(GraficaCuatro);
} …Run Code Online (Sandbox Code Playgroud) 我只需要使用 GreenDao 返回一列。这是 SQL 查询:
SELECT NAME FROM PERSON
Run Code Online (Sandbox Code Playgroud)
我该如何使用 GreenDao 来做到这一点?