Реализация кнопки сохранения в Android

#java #android #android-layout #android-widget #android-manifest

#java #Android #android-макет #android-виджет #android-манифест

Вопрос:

Привет, я разрабатываю приложение для Android, доступ к которому осуществляется путем ввода 4-значного PIN-кода, у меня есть следующие сомнения

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

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

3) У меня есть указатель даты в моей форме. Как я могу сохранить ее значение в виде строки? Или в любой другой переменной

4) В форме я должен убедиться, что все поля заполнены, поэтому я проверяю ошибки, проверяя, заполнено ли поле, но как уведомить пользователя, кроме использования метода TOAST. Я хочу, чтобы сообщение, предоставляемое пользователю, было динамическим, как будто оно должно проверять все поля и уведомлять об отсутствующих полях в одном сообщении

Ответ №1:

1) Используется SharedPreferences для хранения данных. Сделайте сохранение в onPause() методе вашей деятельности. Или вы можете использовать встроенный механизм savedBundleState.

2) Вы можете ограничить активность вашей формы переключением режима на lanscape, используя атрибут в вашем манифесте в теге activity: android:screenOrientation="portrait" .

3) Прочитайте день, месяц и год и сохраните их в настройках.

4) Использовать диалоговое окно. Проверьте поля, а затем покажите AlertDialog с сообщениями об ошибках.

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

1. Привет, мой второй вопрос, пожалуйста, это действительно беспокоит меня

2. Еще одна вещь: возможно ли использовать datepicker встроенным или мы можем получить только через диалоговое окно?

3. AFAIK, это не так, но у вас всегда есть исходники для Android =)

4. Хэй, извините за беспокойство, смог использовать ее в строке //Date DatePicker date=(DatePicker)findViewById(R.id.dp); mDay=date.getDayOfMonth(); mMonth=date.getMonth(); mYear=date.getYear();

5. отлично. Если этот ответ помог вам, отметьте его как принятый, щелкнув галочку слева от ответа.