Да можно запустить в полноэкранном режиме.
Это немного сложно, но это возможно. Вам нужно использовать AppKit и класс NSApplication из другого пакета плагинов. Вот как вы можете переключиться в полноэкранный режим при запуске приложения:
Шаг 1. Вам необходимо создать новую цель Mac Macle в своем приложении. Нажмите Файл -> Создать -> Цель -> macOS -> Пакет, а затем нажмите кнопку Далее. Введите название продукта, например, MacBundle, и нажмите кнопку Готово.
Шаг 2. Выберите вновь созданную группу MacBundle в своем проекте и нажмите Файл -> Создать -> macOS -> Класс какао инажмите кнопку Далее. Введите имя класса, например, MacApp, которое является подклассом NSObject, и установите для языка значение Objective-C. Нажмите Далее, убедитесь, что цель MacBundle выбрана, и нажмите кнопку Создать.
Шаг 3. Отредактируйте MacApp.h так:
#import <Foundation/Foundation.h>
#import <AppKit/AppKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface MacApp : NSObject
+ (void)toggleFullScreen;
@end
NS_ASSUME_NONNULL_END
Шаг4. Отредактируйте MacApp.m следующим образом:
#import "MacApp.h"
@implementation MacApp
+ (void)toggleFullScreen {
[[[[NSApplication sharedApplication] windows] firstObject] toggleFullScreen:nil];
}
@end
Шаг 5. Нажмите на свой проект и в разделе Targets выберите цель своего основного приложения (то же, что для iOS)
Шаг 6. На вкладке Общие прокрутите вниз до раздела Фреймворки, Библиотеки и Внедренное содержимое и нажмите кнопку +. В новом всплывающем окне выбора фреймворка выберите MacBundle.bundle и нажмите кнопку «Добавить», чтобы встроить этот пакет в основное приложение.
Шаг 7. Теперь вы можете вызывать метод toggleFullScreen из класса MacApp, которыйв MacBundle из вашего основного кода iOS. Чтобы заставить его работать, вы можете вызвать его один раз из viewDidAppear из первого UIViewController, который появляется в вашем приложении. Вы можете назвать это следующим образом:
static var needsFullScreen = true
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if Self.needsFullScreen {
Bundle(path: Bundle.main.builtInPlugInsPath?.appending("/MacBundle.bundle") ?? "")?.load()
let macApp = NSClassFromString("MacApp") as? NSObjectProtocol
macApp?.perform(NSSelectorFromString("toggleFullScreen"))
Self.needsFullScreen = false
}
}
После этого при запуске приложения оно автоматически переключится в полноэкранный режим.