在MPAndroid圖表庫中,如何在條形圖中點擊x軸或y軸項目中的每個單獨項目?如何用MPAndroid圖表庫在條形圖中單擊x軸或y軸上的每個單獨項目來打開不同的活動?
對於實施例:如果x中條形圖的軸線是1,2,3,4,5,6,7和條形圖的Y軸100,200,300,400,500,600,700
如果點擊1或100它應打開一個活動, 如果點擊2個或200應該打開另一個活動等..
MainActivity.java
public class MainActivity extends AppCompatActivity implements OnChartValueSelectedListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
BarChart barChart = (BarChart) findViewById(R.id.chart);
barChart.setHighlightPerTapEnabled(false);
barChart.setDescription("");
// set xaxis at bottom
barChart.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM);
// set xaxis
barChart.getXAxis().setGridColor(Color.rgb(255,255,255));
// set x axis text color
barChart.getXAxis().setTextColor(Color.argb(42,44,44,44));
// HorizontalBarChart barChart= (HorizontalBarChart) findViewById(R.id.chart);
barChart.getAxisRight().setEnabled(false);
barChart.setScaleEnabled(false);
barChart.getLegend().setEnabled(false);
barChart.setTouchEnabled(true);
barChart.setDragEnabled(false);
barChart.setScaleEnabled(false);
barChart.setScaleXEnabled(false);
barChart.setScaleYEnabled(false);
barChart.setPinchZoom(false);
barChart.setHighlightPerDragEnabled(false);
barChart.setHighlightPerTapEnabled(false);
barChart.setDrawGridBackground(false);
barChart.setGridBackgroundColor(Color.rgb(255,255,255));
barChart.getXAxis().setGridColor(Color.rgb(255,255,255));
ArrayList<BarEntry> entries = new ArrayList<>();
entries.add(new BarEntry(100, 0));
entries.add(new BarEntry(200, 1));
entries.add(new BarEntry(300, 2));
entries.add(new BarEntry(400, 3));
entries.add(new BarEntry(500, 4));
entries.add(new BarEntry(600, 5));
entries.add(new BarEntry(700, 6));
barChart.setOnChartValueSelectedListener(this);
BarDataSet dataset = new BarDataSet(entries, "# of Calls");
ArrayList<String> labels = new ArrayList<String>();
labels.add("1");
labels.add("2");
labels.add("3");
labels.add("4");
labels.add("5");
labels.add("6");
labels.add("7");
BarData data = new BarData(labels, dataset);
dataset.setColor(Color.rgb(33,200,215));
barChart.setData(data);
barChart.animateY(5000);
}
@Override
public void onValueSelected(Entry e, int dataSetIndex, Highlight h) {
Intent i = new Intent(MainActivity.this, Second.class);
startActivity(i);
}
@Override
public void onNothingSelected() {
}
}
您是否檢查了有關在其圖表上添加事件的官方文檔? – AxelH
[在MPAndroidChart中,如何爲條形圖中的每個條添加點擊事件?](http://stackoverflow.com/questions/28314966/in-mpandroidchart-how-to-add-the-click-event - 爲每個酒吧在條形圖) – AxelH
@AxelH嘿,我不想顯示敬酒。我想爲每個欄項目點擊打開不同的活動(屏幕)?它是如何重複的? – Jacks