Содержимое TabView выходит за пределы безопасных областей в NavigationStack.IOS

Программируем под IOS
Ответить
Anonymous
 Содержимое TabView выходит за пределы безопасных областей в NavigationStack.

Сообщение Anonymous »

Код: Выделить всё

import SwiftUI
struct OnboardingView: View {
@ObservedObject var viewModel: OnboardingViewModel
var body: some View {
TabView(selection: $viewModel.currentPage) {
ForEach(OnboardingPages.allCases, id: \.rawValue) { page in
getPageView(for: page)
.tag(page.rawValue)
}
}
.tabViewStyle(PageTabViewStyle(indexDisplayMode: .never))
}

@ViewBuilder
private func getPageView(for page: OnboardingPages) -> some View {
VStack(spacing: 32) {
Spacer()
VStack(alignment: .center, spacing: 8) {
Text(page.title)
.font(.urb(.semiBold, size: 32))
.foregroundStyle(.white)
Text(page.description)
.font(.urb(.regular, size: 16))
.foregroundStyle(.white)
.multilineTextAlignment(.center)
}

continueButton

dots
}
.padding(.horizontal, 16)
.padding(.bottom, 35)
.ignoresSafeArea()
.background(
Image(page.image)
.resizable()
.scaledToFill()
.ignoresSafeArea()
)
}
Проблема в следующем:
  • Даже без NavigationStack ignoreSafeArea вытягивает TabView за пределы безопасной области.
  • Если модификатор ignoresSafeArea используется с TabView, то содержимое выходит за пределы безопасной зоны.
  • Если модификатор ignoresSafeAre не используется с TabView, изображение не покрывает весь экран.

    VStack и нет безопасной зоны

    Vstack и безопасная зона


Подробнее здесь: https://stackoverflow.com/questions/798 ... ationstack
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»