안드로이드 개발 질문/답변
(글 수 45,052)
차트 엔진 사용해서
Bar 차트를 만들었습니다.
디비에서 데이터를 가져와서 액티비티 뜰 때 잘 표시가 됩니다.
그런데 제가 구현하고 싶은 것은
차트가 있는 액티비티에 버튼을 달아뒀고 그 버튼을 누르면
디비에서 새로운 데이터를 가져와서 차트를 만들고 싶습니다.
버튼 누르면 데이터를 핸들러로 받습니다.
핸들러로 데이터를 제대로 받는 것은 로그를 보고 확인 했습니다만
차트는 전혀 변하지를 않네요.
if (barChart == null) {
LogUtil.print("BarChart NULL");
barChartView = (LinearLayout) tabhost.findViewById(R.id.staticsFirView);
barChart = ChartFactory.getBarChartView(v.getContext(), buildBarDataset(titles, values), renderer, Type.DEFAULT);
barChartView.addView(barChart, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
} else {
LogUtil.print("BarChart Not NULL");
barChart.repaint();
}
제가 이런식으로 만들었고
데이터를 액티비티의 핸들러로 부터 받게 되면 데이터를 다시 buildBarDataset 를 이용해서 세팅하게 됩니다.
renderer 도 마찬가지구요.
어떻게 해야 차트 화면을 갱신 할 수 있을까요?




View의 invalidate()를 호출하시면 되여..