Изменить / использовать несколько макетов в рамках одной и той же деятельности? - PullRequest
4 голосов
/ 19 июля 2011

Я новичок в программировании для Android, но у меня довольно сильный опыт работы с Java. Я работаю над созданием довольно простой игры, которая включает в себя прохождение различных коротких «уровней», и все это приурочено, цель состоит в том, чтобы получить максимально быстрое время. Я помещаю уровни в цитаты, потому что они очень короткие и в основном включают выполнение нескольких простых задач (то есть нажатие кнопки) перед переходом к следующему. В результате, вместо того, чтобы создавать разные действия для каждого уровня, я решил оставить все в одном действии, и когда пользователь выполняет все задачи для одного уровня, другой метод создается с помощью метода setContentView (). Моя проблема в том, что каждый раз, когда я переключаю раскладки, мне нужно сбросить указатели на кнопки с помощью findViewById (), даже если они называются одинаково. Если бы кто-то мог объяснить, почему я должен сделать это, это было бы очень полезно? Кроме того, поскольку я довольно новичок в Android, возможно, я не собираюсь об этом самым эффективным способом? Любые предложения приветствуются и приветствуются.

Кроме того, я думаю, что это, вероятно, связано, но у меня есть хронометр, который я хочу быть постоянным во всех макетах? В других вопросах я видел, что это невозможно во всех видах деятельности, но я хотел проверить случай разметки.

Заранее благодарю за помощь.

Редактировать: Спасибо Аня, видоискатель выглядит как идеальное решение

Edit: Итак, после некоторых экспериментов с ViewFlipper, я решил использовать его для моего проекта. Хотя это не решает проблему необходимости повторного добавления кнопок с каждым новым уровнем (это я решил, дав каждой кнопке отдельное имя, даже для всех макетов), он дал мне некоторые приятные эффекты анимации, а также удобство использования методов showNext и showPrevious.

1 Ответ

2 голосов
/ 19 июля 2011

Вы пробовали ViewFlipper ?В этом случае кажется идеальным решением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...