Pour une raison quelconque, mes boutons ne font rien. J'ai utilisé cette méthode pour mettre en œuvre des boutons avant et il ne m'a jamais donné de problème. L'application a sept boutons différents qui se déplacent tous vers une activité différente.
public class ScheduleActivity extends AppCompatActivity implements View.OnClickListener { private Button mondayButton,tuesdayButton,wednesdayButton,thursdayButton,fridayButton,saturdayButton,sundayButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_schedule); mondayButton = findViewById(R.id.monday_button); tuesdayButton = findViewById(R.id.tuesday_button); wednesdayButton = findViewById(R.id.wednesday_button); thursdayButton = findViewById(R.id.thursday_button); fridayButton = findViewById(R.id.friday_button); saturdayButton = findViewById(R.id.saturday_button); sundayButton = findViewById(R.id.sunday_button); } @Override public void onClick(View view) { switch (view.getId()){ case R.id.monday_button: Intent monday_intent = new Intent(ScheduleActivity.this, MondayActivity.class); startActivity(monday_intent); break; case R.id.tuesday_button: Intent tuesday_intent = new Intent(ScheduleActivity.this, TuesdayActivity.class); startActivity(tuesday_intent); break; case R.id.wednesday_button: Intent wednesday_intent = new Intent(ScheduleActivity.this, WednesdayActivity.class); startActivity(wednesday_intent); break; case R.id.thursday_button: Intent thursday_intent = new Intent(ScheduleActivity.this, ThursdayActivity.class); startActivity(thursday_intent); break; case R.id.friday_button: Intent friday_intent = new Intent(ScheduleActivity.this, FridayActivity.class); startActivity(friday_intent); break; case R.id.saturday_button: Intent saturday_intent = new Intent(ScheduleActivity.this, SaturdayActivity.class); startActivity(saturday_intent); case R.id.sunday_button: Intent sunday_intent = new Intent(ScheduleActivity.this, SundayActivity.class); startActivity(sunday_intent); } } }
3 Réponses :
Vous obtenez les instances des boutons mais ne définissez jamais un onclicklistener pour eux. Vous devez définir le click Lister pour les boutons:
mondayButton.setOnClickListener(this)
Pouvez-vous s'il vous plaît me montrer un exemple de là où je voudrais mettre cela dans mon code?
Il suffit de le mettre après avoir appelé le FindviewyID pour tous les boutons
Vous n'attachez pas l'écoute vue.onclicklistener code> à n'importe lequel de vos boutons.
Ajoutez ceci dans votre
Oncreate () Code> Après avoir installé vos boutons, vos boutons fonctionnent
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_schedule);
...
sundayButton = findViewById(R.id.sunday_button);
// attaching listeners
mondayButton.setOnClickListener(this);
tuesdayButton.setOnClickListener(this);
wednesdayButton.setOnClickListener(this);
thursdayButton.setOnClickListener(this);
fridayButton.setOnClickListener(this);
saturdayButton.setOnClickListener(this);
sundayButton.setOnClickListener(this);
}
Vous devez définir la vue.setonclicklistener {} sur la méthode OnCreate
Bouton privé Mondaybutton, Tuesdaybutton, Mercredaybutton, Thursdaybutton, Fridaybutton, Samedibutton, Sundaybutton; P>
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_schedule); mondayButton = findViewById(R.id.monday_button); tuesdayButton = findViewById(R.id.tuesday_button); wednesdayButton = findViewById(R.id.wednesday_button); thursdayButton = findViewById(R.id.thursday_button); fridayButton = findViewById(R.id.friday_button); saturdayButton = findViewById(R.id.saturday_button); sundayButton = findViewById(R.id.sunday_button); mondayButton.setOnClickListener() { Intent intent = new Intent(...) ; startActivity(intent) ; } }
Pouvez-vous partager la mise en page