Предотвращение возможности приложения iPadOS создавать несколько окон на iPadOS 26IOS

Программируем под IOS
Anonymous
Предотвращение возможности приложения iPadOS создавать несколько окон на iPadOS 26

Сообщение Anonymous »

Я создаю многоплатформенное приложение Apple и в iPadOS пытаюсь настроить приложение так, чтобы пользователи не могли создавать несколько окон для приложения, но при этом могли свободно размещать приложение.
В отличие от macOS, отключение возможности создания новых окон в строке меню не избавляет от возможности создавать новые окна.

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

import SwiftUI

@main
struct MyApp: App {
// Run code to automatically quit the app after closing its window on macOS
#if os(macOS)
@NSApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
#endif

var body: some Scene {
WindowGroup {
ContentView()
}.commands {
// Hide the new window button
CommandGroup(replacing: CommandGroupPlacement.newItem) {
}
}
#if os(macOS)
Settings {
MacSettingsView()
}
#endif
}
}
Однако в версии для iPadOS пользователи по-прежнему могут создавать новые окна, нажав на значок приложения в доке и выбрав кнопку нового окна в верхнем левом углу (или перетащив значок приложения из дока, как в предыдущих версиях)
Изображение

Использование UIRequiresFullScreen (старая настройка plist, используемая для отключения функций многозадачности) не работала, поскольку все, что она делала, это заставляло приложение переходить к резервному дизайну с безопасной зоной для кнопок окна.
Изображение


Подробнее здесь: https://stackoverflow.com/questions/798 ... -ipados-26

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