2017-09-28 2 views
0

Tout d'abord, je suis assez nouveau à ce sujet, alors porte avec moi. J'essaie de faire un spinner où si vous sélectionnez un objet, la disposition et l'activité vont changer, mais je ne peux même pas implémenter le plus simple des filateurs. Jusqu'à présent, le seul code que j'ai est celui ci-dessous, mais peu importe ce que je mets, il ne fait rien, donc je ne dois tout simplement pas le comprendre, s'il vous plaît soyez très précis dans vos réponses. Je vous remercie. la première réponse m'a un bout de chemin, mais le « spinner tour ..... spin.setAdapter (aa) » partie n'est pas acceptée sous OnCreatechanger la disposition et l'activité dans spinner

String[] generations = { "Gen2", "Gen3", "Gen4", "Gen5", "Gen6","Gen7" }; 

Spinner spin = (Spinner) findViewById(R.id.spinner1); 
spin.setOnItemSelectedListener(this); 
ArrayAdapter aa = new ArrayAdapter(this,android.R.layout.simple_spinner_item,generations); 
aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
//Setting the ArrayAdapter data on the Spinner 
spin.setAdapter(aa); 

public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
    switch (position) { 
     case 1: 
      Intent intent2 = new Intent(this, gen2.class); 
      startActivity(intent2); 
      break; 
     case 2: 
      Intent intent3 = new Intent(this, Gen3.class); 
      startActivity(intent3); 
      break; 
     case 3: 
      Intent intent4 = new Intent(this, gen4.class); 
      startActivity(intent4); 
      break; 
     case 4: 
      Intent intent5 = new Intent(this, gen5.class); 
      startActivity(intent5); 
      break; 
     case 5: 
      Intent intent6 = new Intent(this, MainActivity.class); 
      startActivity(intent6); 
      break; 
     case 6: 
      Intent intent7 = new Intent(this, gen7.class); 
      startActivity(intent7); 
      break; 
    } 
} 

Répondre

0

Voici un exemple, espérons qu'il vous aide à comprendre c'est mieux:

public class MainActivity extends Activity implements AdapterView.OnItemSelectedListener { 

String[] country = { "India", "USA", "China", "Japan", "Other", }; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    //Getting the instance of Spinner and applying OnItemSelectedListener on it 
    Spinner spin = (Spinner) findViewById(R.id.spinner1); 
    spin.setOnItemSelectedListener(this); 

    //Creating the ArrayAdapter instance having the country list 
    ArrayAdapter aa = new ArrayAdapter(this,android.R.layout.simple_spinner_item,country); 
    aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    //Setting the ArrayAdapter data on the Spinner 
    spin.setAdapter(aa); 
} 


//Performing action onItemSelected and onNothing selected 
@Override 
public void onItemSelected(AdapterView<?> arg0, View arg1, int position,long id) { 
    switch (position){ 
     // Check what position was selected 
     case 1: 
     //start activity depending on position 
     Intent intent = new Intent(this, ActivityOne.class); 
     startActivity(intent); 
     break; 

     case 2: 
     Intent intent = new Intent(this, ActivityTwo.class); 
     startActivity(intent); 
     break; 

     case 3: 
     Intent intent = new Intent(this, ActivityThree.class); 
     startActivity(intent); 
     break; 
} 

@Override 
public void onNothingSelected(AdapterView<?> arg0) { 
    // TODO Auto-generated method stub 

} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.activity_main, menu); 
    return true; 
    } 
} 
+0

ça m'a rapproché, donc merci beaucoup. ça ne change toujours rien vraiment, ça ne change pas la disposition, ça ne change pas la classe – Runesen