2017-08-04 1 views
0

J'ai un spinner au-dessus d'une liste vivew. je sélectionne l'élément de spinner, Listview est mis à jour et Mon application fonctionne correctement. mais quand une couche est choisie parmi listView (avec description et publicité) ouvrir une de dialogue lorsque je clique sur la publicité dans le dialogue, à proximité de dialogue mais ne fonctionne pas OnItemSelectedListenet En revenant à la page précédente et Rentré la page, la fileuse fonctionnene fonctionne pas spinner onItemSelectedListner après la fermeture du dialogue

OnItemSelectedListener selectedListener1 = new OnItemSelectedListener() { 

    @Override 
    public void onItemSelected(AdapterView<?> adapterView, View view, int position, long id) { 
     //my code  
    } 

    @Override 
     public void onNothingSelected(AdapterView<?> adapterView) {} 
    }; 

    OnItemSelectedListener selectedListener2 = new OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> adapterView, View view, int arg2, long arg3) { 
      //my code 
     } 

     @Override 
     public void onNothingSelected(AdapterView<?> adapterView) { 
     } 
    }; 

    ArrayAdapter<String> adapterSpinner1 = new AdapterSpinner(G.context, R.layout.spinner_item, items1); 
    sp1.setAdapter(adapterSpinner1); 
    sp1.setOnItemSelectedListener(selectedListener1); 

    ArrayAdapter<String> adapterSpinner2 = new AdapterSpinner(G.context, R.layout.spinner_item, items2); 
    sp2.setAdapter(adapterSpinner2); 
    sp2.post(new Runnable() { 
     @Override 
     public void run() { 
      sp2.setSelection(3); 
     } 
    }); 
    sp2.setOnItemSelectedListener(selectedListener2); 
} 
+0

pouvez-vous poster votre code complet ?? –

+0

passer par ces lien https://stackoverflow.com/questions/2390102/how-to-set-selected-item-of-spinner-by-value-not-by-position?rq=1 ou https: //stackoverflow.com/questions/1337424/android-spinner-get-the-selected-item-change-event?rq=1 ou https://stackoverflow.com/questions/2562248/how-to-keep- onitemselected-from-tir-off-on-a-new-instancié-spinner? rq = 1 –

Répondre

0

au lieu de créer différents auditeur sélectionné, mettre en œuvre une activité avec onItemSelectedListener Il vous fournira la méthode

@Override 
    public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) { 
if(view==sp1){//do something} 
    } 

    @Override 
    public void onNothingSelected(AdapterView<?> adapterView) { 

    } 

et vous onCreate

sp1.setOnItemSelectedListener(this); 
sp2.setOnItemSelectedListener(this);