Как заставить одну страницу передавать сообщение другой?

#iphone #ios #uitableview #login #viewdidload

#iPhone #iOS #uitableview #аутентификация #просмотр загрузки

Вопрос:

Моя проблема в том, что разные пользователи будут иметь доступ к разным продуктам. Скажем, пользователь 1 имеет доступ к 3, тогда как пользователь 2 имеет доступ ко всем 4.

Могу ли я иметь что-нибудь при входе в систему, где, если пользователь 1 войдет в систему, он скажет MainView отображать только 3 ячейки? Что-то вроде viewDidLoad в MainView для чтения того, что отображается на странице входа в систему?

Это можно сделать?

Спасибо.

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

1. @Abizem: Пожалуйста, не могли бы вы помочь мне с тем, как сохранить глобальную переменную? Я совсем новичок в objective-c, и поэтому было бы здорово, если бы вы могли помочь. Спасибо.

Ответ №1:

Сохраните глобальную переменную в appdelegate, например numberOfCells. Присвоите ему значение по условию вашего входа в систему.

Как только ваш MainView будет отображаться, как в viewWillAppear, получите значение numberOfCells из appdelegate и измените свой пользовательский интерфейс.

Вы можете получить ссылку на appdelegate следующим образом.

 SampleAppDelegate *appdelegate=(SampleAppDelegate*)[[UIApplication sharedApplication] delegate];
  

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

1. Здравствуйте, не могли бы вы, пожалуйста, помочь мне в этом, поскольку я не знаком с этим. Спасибо.

2. @Honda: возьмите переменную в качестве int numberOfCells в appdelegate. когда вы при входе в систему обновляете значение переменной numberOfCells на основе пользователя, который вошел в систему, вы можете получить это значение при отображении вашего представления

3. Не могли бы вы дать мне пошаговое руководство по этому вопросу? Например, что поместить в AppDelegate.h и .m и т.д., Поскольку я не уверен, с чего начать. Спасибо.

Ответ №2:

Если вы отслеживаете пользователя, который «вошел в систему», вы можете настроить свои просмотры на основе этого пользователя / профиля.

Ответ №3:

почему вы не используете NSUserDefaults ??

Вы можете сохранить в нем много полей, и они будут доступны по всему вашему проекту.