Вопрос Android (для игры)

#android #android-emulator

#Android #android-эмулятор

Вопрос:

У меня есть игра, в конце я показываю «Игра окончена», если игрок не следует некоторым инструкциям …. проблема в том, что Android, похоже, остается в этом состоянии, когда я возвращаюсь в меню и возвращаюсь обратно. у меня все еще нет способа снова поиграть, игра закодирована в основном действии и имеет Runnables и события onTouch, также у меня есть заставка, которая при нажатии переходит к другому действию, где начинается игра…. Я новичок в Android, каков наилучший способ завершить поток, а затем отправить их на первое действие или заставку?

Заранее благодарю вас

Ответ №1:

Очень сложно помочь, не видя никакого кода. Однако действие может завершиться самостоятельно, вызвав функцию finish(), если это то, о чем вы спрашиваете.

Комментарии:

1. Спасибо, Фил, некоторые люди бывают ошеломлены, когда публикуется весь код, поэтому я хотел спросить первым. Я добавил функцию finish(); и она завершает его, но как только это происходит, я возвращаюсь ко второму действию, и я могу делать все, что угодно.. на самом деле я хочу закончить его и отправить в первое действие

2. Понял, похоже, что предыдущее действие перед переходом к новому все еще запоминает значения предыдущей игры.. итак, мне пришлось сбросить все до завершения (), а затем, когда они нажимают на заставку, она запускается как новая игра. Спасибо за помощь

3. Если Activity1 необходимо обновить, когда Activity2 завершается, startActivityForResult / onActivityResult может помочь.

Ответ №2:

Если вы используете статические переменные, они будут «запомнены», если явно не заданы в конструкторе View или onSizeChanged и т.д. Например, x = x 5, может увеличивать x каждый раз, когда вы запускаете одну и ту же игру, если x статичен, потому что он «запоминает» x из предыдущей игры — об этом нужно знать.