/// Модель включает необходимые данные. Можете ее так же дополнить нужными параметрами
/// такими как extraHeight, extraWidth если нужны доп. отступы относительно подсветки
public struct OnboardingHighlightElement: Identifiable {
public let anchor: Anchor<CGRect>
public let id: String
public let radius: CGFloat
}
public struct OnboardingHighlightElementKey: PreferenceKey {
// MARK: - Static Properties
public static var defaultValue: [String: OnboardingHighlightElement] = [:]
// MARK: - Static Functions
public static func reduce(
value: inout [String: OnboardingHighlightElement],
nextValue: () -> [String: OnboardingHighlightElement]
) {
value.merge(nextValue()) { $1 }
}
}
Добрый день! Тк в нашем проекте мы держим IOS15, мы не смогли им воспользоваться :( Если вопрос про то, почему не сделали 2 разные версии (для 17 оси - TipKit и 15,16 осей - решение выше), то это слишком дорого (в плане трудозатрат). Тк поддержка двух версий, включает в себя их постоянные обновления / улучшения. Но соглашусь, TipKit отличная либа для такого рода задач, думаю когда будем приближаться к 17оси - мы на нее перейдем)
Под кнопкой - подразумевается кнопка аналогичная кнопке "Понятно", со скриншота симулятора? Контент шторки представлен как самостоятельная структура, на конкретный девайсы мы не завязываем разные отступы, они всегда соответствуют стандартам в 16 пикеселей.
Добрый день! Нужно немного больше конкретикии касательно исходников, которые вас интересуют.
В текущем решении для рисовки используется SUI, а не kit и соотвественно показ заднего фона / шторки (или любого другого вашего контекта - например окно диалога), так же строится на модификаторе из SUI (fullScreenCover - см имплементацию clearBackground). И сама шторка из себя так же представляет sui структуру.
Добрый день! Прикреплю ниже:
Добрый день! Тк в нашем проекте мы держим IOS15, мы не смогли им воспользоваться :( Если вопрос про то, почему не сделали 2 разные версии (для 17 оси - TipKit и 15,16 осей - решение выше), то это слишком дорого (в плане трудозатрат). Тк поддержка двух версий, включает в себя их постоянные обновления / улучшения. Но соглашусь, TipKit отличная либа для такого рода задач, думаю когда будем приближаться к 17оси - мы на нее перейдем)
Под кнопкой - подразумевается кнопка аналогичная кнопке "Понятно", со скриншота симулятора? Контент шторки представлен как самостоятельная структура, на конкретный девайсы мы не завязываем разные отступы, они всегда соответствуют стандартам в 16 пикеселей.
Или вы не про эту кнопку?
Добрый день! Нужно немного больше конкретикии касательно исходников, которые вас интересуют.
В текущем решении для рисовки используется
SUI
, а неkit
и соотвественно показ заднего фона / шторки (или любого другого вашего контекта - например окно диалога), так же строится на модификаторе изSUI
(fullScreenCover
- см имплементациюclearBackground
). И сама шторка из себя так же представляет sui структуру.Буду рад вам помочь, просто нужны уточнения)
Легко читается и супер информативно! Спасибо!
Спасибо!