Почему Toast пропускает последний элемент в этом цикле?

1

Я практикуюсь с использованием Android Studio, поэтому я делаю очень простую программу, в которой пользователь нажимает кнопку, и сообщение Toast будет проходить через каждый элемент в массиве, привязанном к этой кнопке, с помощью цикла for. По какой-то причине, это показывает мне только последний элемент в массиве. Я проверил, можно ли по отдельности вызывать все, и в этом нет проблемы, но цикл for покажет мне только последний элемент. Это просто как работают тосты, или я что-то упустил?

    public void select(View v) {
    String tester = v.getTag().toString();

    if (tester.equals("Stage_01")) {
        for (int x = 0; x < stage_01.enemyList.length; x++) {
            Toast.makeText(this, "Monsters in stage 1: " + stage_01.enemyList[x], Toast.LENGTH_SHORT).show();
        }
    }
}
Теги:
android-studio
toast

1 ответ

1
Лучший ответ

Тостовые сообщения на самом деле складываются, когда они используются внутри цикла for, и я испытал небольшую задержку в сообщениях. Но если вы хотите уточнить, проходит ли цикл for через массив.

  1. Вы можете поместить System.out.println("Монстры на стадии 1:" + stage_01.enemyList [x]); внутри для цикла. Вы можете увидеть результат на вкладке Run в Android Studio.
  2. Вы можете поместить Log.d("TAG", "Monsters на этапе 1:" + stage_01.enemyList [x]); внутри для цикла. Вы можете увидеть вывод на вкладке регистратора в Android Studio.

Обе эти вкладки расположены внизу андроид студии.

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

  • 0
    Спасибо. Я не мог понять, где должны быть журналы System.out.println, когда я пытался использовать это ранее, но забыл об этом. Спасибо за вашу помощь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню