2016-08-03 3 views
-1

Я пытаюсь использовать Toast в моей Try/Catch, но когда он ловит неправильный вход, тост не появляется. Я не могу найти ошибку в коде, пожалуйста, помогите мне здесь.Toast in Try/Catch numberformatexception

это короткая часть кода, которая включает в себя попытку/поймать блок:

else{ 
     try{ 
      Integer.parseInt(score_1.getText().toString()); 
      Integer.parseInt(score_2.getText().toString()); 
      ArrayList_matches.get(position_match).score_1 = score_1.getText().toString(); 
      ArrayList_matches.get(position_match).score_2 = score_2.getText().toString(); 
      adapter.notifyDataSetChanged(); 


     } catch(NumberFormatException ex) { 
      Toast.makeText(Game_activity.this, "Wrong input, numbers only", Toast.LENGTH_LONG).show(); 
     } 

    } 
+0

Вы должны использовать log.e (tag, message); – sonnv1368

ответ

0

Так простое использование

Toast.makeText(getApplicationContext(), "Wrong input, numbers only", Toast.LENGTH_LONG).show(); 

вместо

Toast.makeText(Game_activity.this, "Wrong input, numbers only", Toast.LENGTH_LONG).show(); 

И если вы хотите для отладки затем использовать

Log.d("TAG","YOUR MSG"); 
0

Задайте несколько значений по умолчанию для оценки 1.

0

Попробуйте этот путь

try { 

    Integer.parseInt(score_1.getText().toString()); 
    Integer.parseInt(score_2.getText().toString()); 
    ArrayList_matches.get(position_match).score_1 = score_1.getText().toString(); 
    ArrayList_matches.get(position_match).score_2 = score_2.getText().toString(); 
    adapter.notifyDataSetChanged(); 

} catch(NumberFormatException ex) { 

    runOnUiThread(new Runnable(){ 
    public void run() { 
     Toast.makeText(Game_activity.this, "Wrong input, numbers only", Toast.LENGTH_LONG).show(); 
    }); 

} 

Я настоятельно рекомендую использовать Log внутри улова.

Счастливое кодирование.

0

может быть не исключение NumberFormatException. пожалуйста, введите неправильный ввод, который не находится в числовом формате,