2012-01-23 3 views
0

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

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

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

  • Войти экрана
  • Главный экран

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

Любая идея о том, как я могу использовать разные экраны и как ее кодировать?

ответ

3

два варианта:

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

Спасибо за ответ. Я буду номером 1 на данный момент :) – chrs

0

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

Смежные вопросы