Как использовать элемент управления UISegmented, чтобы пользователь вошел в систему - PullRequest
0 голосов
/ 05 сентября 2011

Я создаю простое приложение, которое загружает модальное представление в контроллер корневого представления, и это модальное представление имеет сегментированный элемент управления для пользователя, чтобы выбрать, хочет ли он / она оставаться в системе. Модальное представление имеет имя пользователя и поле пароля с кнопкой отправки под ним. После того, как приложение проверит пользователя, он / она будет перенаправлен на контроллер корневого представления, в котором есть кнопки для перехода пользователя к другому виду, т.е. к функции 1, функции 2 и т. Д. Если пользователь нажимает кнопку возврата (управляемую навигационным контроллером ), Я хочу, чтобы у пользователя больше не запрашивались его / ее учетные данные, когда приложение снова загружает контроллер корневого представления, что позволяет использовать сегментированный элемент управления.

Как можно использовать и реализовать сегментированный элемент управления в этом случае? Спасибо!

Ответы [ 2 ]

1 голос
/ 05 сентября 2011

Я полагаю, что вы поняли это, но вам нужно сохранить учетные данные для входа, я полагаю, что ваш вопрос 'Как!?'

Если вы хотите хранить учетные данные для входа в течение всего времени жизни приложения (они отключаются при закрытии приложения), я бы сохранил переменные в классе Globals, чтобы на них можно было ссылаться из любого места в приложении .

Если вы хотите хранить учетные данные для входа дольше (то есть они все равно могут войти в систему, если закроют и снова откроют приложение), вам следует использовать NSUserDefaults:

Письмо:

[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"UserIsLoggedIn"];
[[NSUserDefaults standardUserDefaults] synchronize];

Чтение:

BOOL loggedIn = [[NSUserDefaults standardUserDefaults] boolForKey:@"UserIsLoggedIn"];

Обратите также внимание на следующие соображения:

  • UserDefaults не являются безопасными. Пожалуйста, не храните пароли там без их шифрования.
  • boolForKey: возвращает NO, если указанный вами ключ не существует
0 голосов
/ 05 сентября 2011

Почему вы собираетесь использовать UISegmentedController? Просто используйте простой UIBarButtonItem в качестве кнопки выхода из системы на панели навигации RootViewControllers.
В RootViewControllers viewWillAppear/viewDidAppear метод проверки, пользователь уже вошел в систему или нет. На основании этого загружается модальное представление.

...