2017-05-22 4 views
0

Donc, j'ai une listview dans mon activité principale qui contient un bouton à bascule je veux initialiser et utiliser le bouton bascule ce que je sais est que je devrais l'initialiser dans mon getView. .not dans mon onCreate depuis son dans la listview mais si je l'ai mis onCreate ou getView je reçois une exception de pointeur nul pointant vers ma ligne toggle.setOnCheckedChangeListener (new CompoundButton.OnCheckedChangeListener() {.. qu'est-ce que je fais malbouton de bascule listview cliquez pour arrêter alarmManager de classe différente

@Override 
    public View getView(int position, View convertView, ViewGroup parent) { 

     View row = convertView; 
     ViewHolder holder = null; 
     if(row==null || row.getTag()==null){ 
      LayoutInflater inflater = LayoutInflater.from(activity); 
      row = inflater.inflate(layoutResource,null); 
      holder=new ViewHolder(); 

      holder.mTitle=(TextView)row.findViewById(R.id.name); 
      holder.mDate=(TextView)row.findViewById(R.id.dateText); 
      holder.mTime=(TextView)row.findViewById(R.id.timeText); 

      row.setTag(holder); 
     }else{ 
      holder = (ViewHolder)row.getTag(); 
     } 



     holder.myAlarm = getItem(position); 
     holder.mTitle.setText(holder.myAlarm.getTitle()); 
     holder.mDate.setText(holder.myAlarm.getMonth()+" "+holder.myAlarm.getDay()+", "+holder.myAlarm.getYear()); 

     ToggleButton toggle = (ToggleButton) findViewById(R.id.toggleButton); 
     toggle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { 
      public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
       if (isChecked) { 
        Toast.makeText(MainActivity.this, "IT IS CHECKED", Toast.LENGTH_SHORT).show(); 
       } else { 
        Toast.makeText(MainActivity.this, "IT IS NOT CHECKED", Toast.LENGTH_SHORT).show(); 
       } 
      } 
     }); 

return row; 
} 

toute aide serait très appréciée

Répondre

0

Votre bouton bascule inclut-il sur chaque ligne de liste? si qu'au lieu d'utiliser cette

ToggleButton toggle = (ToggleButton) findViewById(R.id.toggleButton); 

utilisent ce

holder.toggle = (ToggleButton) row.findViewById(R.id.toggleButton); 
+0

wow ... Comment ai-je laissé passer ça .. vous remercie @ msh.nayan – spyder3anz