J'ai un bouton. Lorsque l'utilisateur clique sur le bouton, il y a certaines conditions, cette condition n'est pas satisfaite alors il faut afficher le toast mais pas le message du toast....
Code : Modifié
Button addMe = (Button)findViewById(R.id.addMe);
addMe.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if(selectedReason.equals("--Select--")){
Log.i("TAG","-----");
Toast.makeText(getBaseContext(), "Reason can not be blank", Toast.LENGTH_SHORT).show();
}else if(selectedType.equals("--Select--")){
Toast.makeText(getParent(), "Discount type can not be blank", Toast.LENGTH_SHORT).show();
}else{
if(selectedType.equals("Value")){
if(spc_amount.getText().toString().equals("")){
Log.i("TAG","-----");
Toast.makeText(getBaseContext(), "Discount type can not be blank", Toast.LENGTH_SHORT).show();
}else{
if(Double.parseDouble(spc_amount.getText().toString()) > invoiceValue){
Toast.makeText(getBaseContext(), "Amonut can not be grater than invoice", Toast.LENGTH_SHORT).show();
}else{
Discount dis = new Discount();
dis.setCriteriaName(selectedReason);
dis.setDiscountValue(Double.parseDouble(spc_amount.getText().toString()));
spDisList.put(1,dis);
tl.removeAllViews();
loadTableLayout();
}
}
}
}
}
});
J'ai essayé le contexte avec getParent()
, getApplicationContext()
, SpecialDiscountActivity.this
& getBaseContext()
mais ne fonctionne pas....
Ce site Toast
message venant sous le Tab Activity Group
2 votes
Comme indiqué dans un commentaire ci-dessous, vous devez également activer l'option "Afficher les notifications" pour l'application afin que Toast fonctionne pour vous.
1 votes
Pourquoi avez-vous modifié le code pour inclure la solution ? Elle devrait être conservée pour contenir l'erreur, sinon cette question n'a pas de sens.
1 votes
Il y a aussi un problème courant : si vous n'êtes pas dans le thread principal, vous devez appeler
runOnUiThread
. Par exemplerunOnUiThread(() -> Toast.makeText(getApplicationContext(), " ...", Toast.LENGTH_LONG).show());