Android-приложение с более чем одним экраном - PullRequest
0 голосов
/ 23 января 2012

В настоящее время я пытаюсь разработать приложение для Android в Eclipse (Java), которое показывает некоторые шутки, загруженные из базы данных. Пользователь может голосовать за каждую шутку один раз, и чтобы убедиться, что он делает это только один раз, я сделал таблицу в базе данных, которая содержит три столбца.

  • Электронная почта
  • Имя пользователя (используется, когда пользователь публикует шутку)
  • Зашифрованный пароль

У меня сейчас два "экрана":

  • Экран входа в систему
  • Главный экран

При каждом запуске приложение проверяет SharedPreferences на наличие файла, содержащего некоторую информацию, и при наличии какой-либо информации оно должно загружать главный экран, но при отсутствии информации об учетной записи должен загружаться экран входа в систему.

Есть идеи, как использовать разные экраны и как их кодировать?

Ответы [ 2 ]

3 голосов
/ 23 января 2012

Два варианта:

  1. В вашем Activity проверьте, есть ли информация об учетной записи.Если нет, то setContentView на экране входа.В противном случае, setContentView для вашего другого контента.Если вы пойдете по этому пути, вам потребуется логика как логина Activity, так и другого в той же операции.Не должно быть слишком плохо, если логика относительно проста.
  2. Есть два вида деятельности.Активностью по умолчанию может быть логин Activity, но в onCreate() вы можете проверить, существует ли информация, и если она существует, просто запустите другой Activity сразу и вернитесь с onCreate().В противном случае продолжайте с setContentView и т. Д.
0 голосов
/ 23 января 2012

У вас может быть один верхний макет (например, FrameLayout), который содержит два перекрывающихся макета (один для входа в систему и один для основного).Используйте один вид деятельности.Когда начинается действие, установите setContentView () в верхний макет.Затем определите метод selectScreen (boolean isMain), который на основе аргумента устанавливает основной макет и отключает вход в систему (или наоборот).Вы включаете / выключаете экраны с помощью метода setVisibility () в классе View.Вы можете переключить экран в любое время, вызвав этот метод.Если вы хотите проявить особую фантазию, вы можете использовать стандартную анимацию при перелистывании экранов.

...