2017-04-19 1 views
0

Je fais ma première application et la progression est lente. Je me demande simplement comment je retourne une valeur Spinner pour la passer comme une chaîne.Spinner Valeur à la chaîne

Voici mon code:

D'abord la classe d'événement:

public void event(){ 
    calanderBtn = (Button)findViewById(R.id.eventBtn); 
    calanderBtn.setOnClickListener(new View.OnClickListener(){ 
     @Override 
     public void onClick(View v) { 
      Intent intent = new Intent(Intent.ACTION_INSERT); 
      intent.setType("vnd.android.cursor.item/event"); 
      intent.putExtra(CalendarContract.Events.TITLE, "Home"); 
      intent.putExtra(CalendarContract.Events.DESCRIPTION, "Cleaning : "); 
      intent.putExtra(CalendarContract.Events.EVENT_LOCATION, "Home"); 
      startActivity(intent); 
     } 
    }); 
} 

Deuxième Classe Spinner:

public void selectcleaning() { 
     spCleaning = (Spinner) findViewById(spinner); 

     adapterCleaningType = new ArrayAdapter<String>(this, 
       android.R.layout.simple_spinner_item, cleaningType); 
     adapterCleaningType.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spCleaning.setAdapter(adapterCleaningType); 
    } 

Je suis en train de sélectionner la valeur de selectcleaning (valeur soit Oui ou Non) et passez-le dans la description dans le Calendrier de la classe d'événement et je ne suis pas sûr de ce qu'il faut faire.

Répondre

0

vous pouvez utiliser ce code pour obtenir la valeur

Spinner spinner = (Spinner)findViewById(R.id.spinner); 
String text = spinner.getSelectedItem().toString(); 

ou d'obtenir la valeur lors de spinner sélectionnée à l'aide OnItemSelectedListener (Android Doc)

public class SpinnerActivity extends Activity implements 

OnItemSelectedListener { 
    @Override 
    protected void onStart() { 
     Spinner spinner = (Spinner) findViewById(R.id.spinner); 
     spinner.setOnItemSelectedListener(this); 
    } 

    public void onItemSelected(AdapterView<?> parent, View view, 
      int pos, long id) { 
     // An item was selected. You can retrieve the selected item using 
     // parent.getItemAtPosition(pos) 
    } 

    public void onNothingSelected(AdapterView<?> parent) { 
     // Another interface callback 
    } 
} 
0

Vous devriez essayer d'utiliser les Dérogations pour la classe tourbillonnement afin:

spinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
@Override 
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) { 
    // your code here 

}}); 

Pour de position int 'vos égalerait 0 (oui) ou 1 (non)

0

Essayez de régler un sur écouteur sélectionné par l'élément. Lorsqu'un élément est sélectionné, vous pouvez stocker cette valeur dans une variable globale. Il obtient le premier élément par défaut aussi.

spCleaning.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 

     @Override 
     public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 

      // Value is current spinner item 
      globalStringVariable = (String) parent.getItemAtPosition(position); 

     } 

     // Because AdapterView is an abstract class, onNothingSelected must be defined 
     @Override 
     public void onNothingSelected(AdapterView<?> parent) { 

      // This is default, before you've selected anything. 
      // It gets the first value. 
      globalStringVariable = parent.getItemAtPositon(0); 
     } 

    });