我在项目中使用MPAndroidChart。
如果有四个图形,则显示一些信息。
当用户单击特定图表时,我想向他们显示一些详细信息。
为此,我使用了view.setOnClickListener();
但它不起作用。
还有其他方法可以监听图表中的点击事件。
我在MPChart文档中找到了onValueSelected();
方法,但是对我来说没有用,因为我想要单击的图表ID。
我已经使用以下
chart = (PieChart) findViewById(R.id.chart);
chart.setOnClickListener(MainActivity.this);
chart.setTouchEnabled(true);
public void onClick(View v) {
Toast.makeText(MainActivity.this,"Clicked",Toast.LENGTH_SHORT).show();
}
还有其他方法是
chart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,"Clicked",Toast.LENGTH_SHORT).show();
}
});
但是没有运气。
最佳答案
我已经尝试过使用onClickListener,但是它无法正常工作,因此请使用库本身随附的以下代码。
mChart.setOnChartGestureListener(new OnChartGestureListener() {
@Override
public void onChartTranslate(MotionEvent me, float dX, float dY) {
// TODO Auto-generated method stub
}
@Override
public void onChartSingleTapped(MotionEvent me) {
// TODO Auto-generated method stub
}
@Override
public void onChartScale(MotionEvent me, float scaleX, float scaleY) {
// TODO Auto-generated method stub
}
@Override
public void onChartLongPressed(MotionEvent me) {
// TODO Auto-generated method stub
}
@Override
public void onChartFling(MotionEvent me1, MotionEvent me2,
float velocityX, float velocityY) {
// TODO Auto-generated method stub
}
@Override
public void onChartDoubleTapped(MotionEvent me) {
// TODO Auto-generated method stub
}
});
关于android - MPAndroidChart OnClickListener不适用于PieChart,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31402308/