# Сторис в iOS
Поддержка
Stories в iOS поддерживаются с версии SDK 3.0.0
Для отображения сторис есть два формата интеграции:
- XIB
- В коде
# Интеграция через XIB (StoryBoard)
- Создайте новый UIView в редакторе StoryBoard.
Откройте StoryBoard и добавьте новый элемент UIView.
Измените класс этого UIView со стандартного на StoriesView. Для этого выберите созданный UIView, перейдите в Inspector и укажите класс StoriesView в поле Custom Class.
- Свяжите созданный StoriesView с кодом вашего ViewController.
Откройте ваш контроллер (например, MainViewController.swift).
Добавьте переменную с аннотацией @IBOutlet для созданного в StoryBoard объекта:
@IBOutlet private weak var storiesCollectionView: StoriesView!
- Инициализация блока сторис
В методе viewDidLoad (или в другом подходящем месте вашего кода) инициализируйте блок сторис с помощью метода configure. Пример кода для инициализации:
override func viewDidLoad() {
super.viewDidLoad()
// Проверяем, что globalSDK инициализирован
if let globalSDK = globalSDK {
// Инициализация блока сторис
storiesCollectionView.configure(sdk: globalSDK, mainVC: self, code: "STORIES_CODE")
}
}
Метод configure
sdk: объект типа SDK (в вашем случае — это globalSDK), который содержит данные персонализации и методы для работы с блоком сторис. mainVC: текущий контроллер, который должен реализовать UIViewController. В большинстве случаев это будет self. code: строковый идентификатор, используемый для выбора конкретного блока сторис.
- Тестирование
Запустите ваше приложение и убедитесь, что блок сторис корректно отображается и взаимодействует с SDK.
Пример:
class MainViewController: UIViewController {
// Связываем StoriesView через XIB
@IBOutlet private weak var storiesCollectionView: StoriesView!
override func viewDidLoad() {
super.viewDidLoad()
// Инициализация блока сторис с помощью globalSDK
loadStoriesViewBlock()
}
// Метод инициализации StoriesView
private func loadStoriesViewBlock() {
if let globalSDK = globalSDK {
// Передаем SDK и настраиваем блок сторис
storiesCollectionView.configure(sdk: globalSDK, mainVC: self, code: "STORIES_CODE")
}
}
}
# Интеграция в коде
- Настройка IBOutlet для коллекции сторис
В вашем классе контроллера необходимо создать IBOutlet для элемента, который будет отображать сторис. Обычно это UICollectionView или кастомный компонент.
@IBOutlet private weak var storiesCollectionView: StoriesView!
Убедитесь, что этот IBOutlet привязан к элементу на вашем интерфейсе.
- Подготовка globalSDK
Перед инициализацией сторис, необходимо убедиться, что у вас есть объект globalSDK, который содержит данные для персонализации и методы для работы со сторис.
Инициализируйте globalSDK перед вызовом метода инициализации.
// Пример
globalSDK = GlobalSDK(userId: "123", personalizationData: ["key": "value"])
- Реализация метода для инициализации блока сторис
private func loadStoriesViewBlock() {
if let globalSDK = globalSDK {
// Конфигурация storiesCollectionView с SDK и данными контроллера
storiesCollectionView.configure(sdk: globalSDK, mainVC: self, code: "STORIES_CODE")
}
}
Этот метод проверяет наличие globalSDK, и если он существует, настраивает блок сторис с помощью метода configure.
Параметры метода configure:
- sdk: Экземпляр globalSDK с данными и методами персонализации.
- mainVC: Текущий контроллер (UIViewController), который нужен для работы с интерфейсом.
- code: Строковый идентификатор для выбора конкретного блока сторис.