Рекомендации пользователей для пользователей iOS

Я создаю приложение, в котором некоторые пользователи будут иметь больше доступа к функциям, чем другие. Концепция состоит в том, что некоторые пользователи являются родителями, а другие – детьми, и родители могут, например, добавлять обязанности, а дети – нет. Мне интересно, какие передовые методы для реализации такой настройки, включая:

1. Должны ли я иметь отдельные раскадровки и венчурные фонды для родителей и детей? В основном есть некоторые кнопки и функции, которые должны существовать на определенных страницах для родителей, а также дополнительные экраны.

2. Лучше ли это сделать, чтобы иметь атрибут роли в классе пользователя?

3. В общем, для приложения, в котором информация делится между пользователями (например, одна семья), каковы наилучшие методы проектирования?

Если у кого-то есть какой-нибудь примерный код Swift для такого рода вещей, было бы очень полезно посмотреть, поскольку я только начинаю с iOS.

Заранее спасибо.

В целом,

1) Нет. Если между двумя страницами есть только небольшие визуальные различия, вы должны просто скрыть / изменить элементы, которые пользователь не должен видеть. Если пользователю требуется специальное представление, просто создайте это представление в своем раскадровке и покажите его только в соответствующих случаях.

2) Чтобы сделать это, вы можете либо иметь свойство в пользовательском сущности, которое указывает тип пользователя, либо вы могли бы иметь несколько пользовательских объектов на основе ролей и отображать / скрывать элементы пользовательского интерфейса на основе типа сущности.

3) Это очень широкий вопрос и действительно зависит от размера и сложности вашего приложения.

Все это очень общее. Есть много факторов, которые могли бы определить лучший способ сделать это, в том числе: где пользователи импортируются или создаются, чувствительность данных, количество разных типов пользователей или «наборы разрешений».

ТЛ; др

Мое решение той же проблемы:

  1. перечисление пользовательских ролей
  2. свойство user-role в классе User
  3. Текущая версия

Пример кода

 enum UserRole { case Admin case FremiumUser case PayingUser } } struct User { var name = "J. Doe" var roles = [UserRole]() } CurrentUser { // Singleton pattern static let sharedUser = CurrentUser() private init() {} var user = User() } 

обсуждение

Я создаю приложение, которое разделяет вашу задачу. Вдохновленные шаблоном Decorator и / или программно-ориентированным программированием, мои текущие мысли состоят в том, чтобы иметь перечисление пользовательских ролей, принадлежащее свойству в моем классе User, доступное через глобальный одноэлементный объект CurrentUser. Каждый экран (контроллеры просмотра, представления, какие у вас есть) может проверять роли текущего пользователя и реагировать соответствующим образом.

Мысли?

  • Недостаточное представление исчезает во время аутентификации игрового центра
  • Предотвращение создания приложения приложением просмотра при выполнении модульных тестов
  • Существующий ViewController с пользовательской анимацией
  • iPhone: Какое правильное использование viewDidDisappear?
  • Приложение iphone не отвечает после запуска в альбомной ориентации на iPad
  • Как обеспечить, чтобы View Controller не перезагружался при segueing?
  • Снимок экрана, который в настоящее время не отображается на экране iOS
  • iOS segue заморозится в течение многих секунд, прежде чем показывать новый вид
  • presentViewController мерцает в IOS 8
  • Текущий контроллер просмотра в раскадровке с навигационным контроллером - Swift
  • Вызвать метод из AppDelegate - Objective-C
  • Давайте будем гением компьютера.