Esempio n. 1
0
  public void updateCharts(List<?> statsForApp) {
    Chart chart = new Chart();
    int page = myAdapter.getCurrentPage();
    int column = myAdapter.getCurrentColumn();

    int position = -1;
    List<View> charts = new ArrayList<View>();

    int pos = 0;
    for (int i = 0; i < myAdapter.getNumPages(); i++)
      for (int j = 1; j < myAdapter.getNumCharts(i); j++) {
        int pageColumn[] = new int[3];
        View chartView = myAdapter.buildChart(getActivity(), chart, statsForApp, i, j);
        /*
         * if(chartView==null) {
         * Log.i(LOG_TAG,"Ignoring chart p="+i+" c="+j+"for class="
         * +this.getClass().toString()); continue; }
         */
        Gallery.LayoutParams params =
            new Gallery.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
        chartView.setLayoutParams(params);
        pageColumn[0] = i;
        pageColumn[1] = j;
        pageColumn[2] = myAdapter.getNumCharts(i);
        if (i == page && j == column) position = pos;
        pos++;
        chartView.setTag(pageColumn);
        charts.add(chartView);
      }
    chartGallery.setIgnoreLayoutCalls(false);
    chartGalleryAdapter.setViews(charts);
    if (position >= 0) chartGallery.setSelection(position);
    chartGalleryAdapter.notifyDataSetChanged();
    chartGallery.invalidate();
  }