2015-05-27 9 views
0

У меня есть фрагмент GraphFragment, который отображает все данные, которые мне нужны, используя GraphView на графике. Я хочу дать пользователю возможность изменить gridcolor GraphView, но когда я пытаюсь обновить представление, он не работает (ничего не меняется). Функция setGridColor добавлена ​​к определенному индексу списка, который пользователь нажимает.Как обновить представление LinearLayout для фрагмента

public class GraphFragment extends Fragment { 

    private GraphView graphView;  
    LinearLayout layout; 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 

     ViewGroup rootView = (ViewGroup) inflater.inflate(R.layout.graph_fragment, container, false); 

     //Initialise the glucose level graph 
     graphView = new LineGraphView(this.getActivity(), "Blood Glucose (mmol/l)"); 

     graphView.getGraphViewStyle().setVerticalLabelsWidth(40); 

     //Add the test data 
     graphView.addSeries(testSeries); 

     layout = (LinearLayout) rootView.findViewById(R.id.graph1); 
     layout.addView(graphView); 
    } 

    public void setGridColor (int position){ 
     if(position==0){ 
      //graphView = new LineGraphView(this.getActivity(), "Blood Glucose (mmol/l)"); 
      layout.removeView(graphView); 
      graphView.getGraphViewStyle().setGridColor(Color.RED); 
      layout.addView(graphView);    
     } 
     if(position==1){ 
      //graphView = new LineGraphView(this.getActivity(), "Blood Glucose (mmol/l)"); 
      layout.removeView(graphView); 
      graphView.getGraphViewStyle().setGridColor(Color.BLUE); 
      layout.addView(graphView); 
     } 
     if(position==2){ 
      //graphView = new LineGraphView(this.getActivity(), "Blood Glucose (mmol/l)"); 
      layout.removeView(graphView); 
      graphView.getGraphViewStyle().setGridColor(Color.GREEN); 
      layout.addView(graphView); 
     } 
    } 
} 

ответ

0

Попробуйте запустить graphView.invalidate() после вашего изменения.

+0

Привет, я попробовал это, к сожалению, View остается тем же самым, что и его белый цвет по умолчанию. – Ossz

Смежные вопросы