Когда пользователь закрывает главное окно приложения, отсутствует пункт меню для его повторного открытия, приложение XCode, MacOs - PullRequest
0 голосов
/ 08 апреля 2020

Приложение MacOs отклонено. Один из пунктов, который необходимо решить:

Было бы целесообразно, чтобы приложение реализовало меню «Окно», в котором перечислены основные окна, чтобы его можно было открыть, или предоставило аналогичные функции в другом пункте меню. В Руководстве по интерфейсу пользователя macOS говорится, что «строка меню [a] всегда содержит [a] меню окна».

Я действительно не понимаю, что делать ... Это первый раз, когда я отправляю приложение MacOs ...

Это мой AppDelegate.swift файл .

1 Ответ

1 голос
/ 09 апреля 2020

Ниже вы найдете решение, которым я поделюсь с вами. Спасибо Trojanfoe за то, что указал мне правильное направление. Я надеюсь, что это поможет новичкам MacOS, таким как я.

У моего приложения есть домашняя страница, которую вы видите при запуске, и она остается на экране, пока вы не взаимодействуете. После взаимодействия вы покидаете домашнюю страницу и не можете вернуться к ней, поскольку в приложении нет кнопки, позволяющей это сделать, или отсутствует пункт меню главного окна, позволяющий это сделать.

Команда проверки Apple отклонила мое приложение и сказал: «В частности, мы обнаружили, что, когда пользователь закрывает главное окно приложения, отсутствует пункт меню, чтобы повторно открыть его. Было бы целесообразно, чтобы приложение реализовало меню «Окно», в котором перечислены основные окна, чтобы его можно было снова открыть или предоставить аналогичные функции в другом пункте меню. В руководящих указаниях по интерфейсу пользователя macOS говорится, что «строка меню всегда содержит меню окна».

Затем мне нужна помощь по Stackoverflow, а также в Интернете и, наконец, выясняется приведенное ниже решение о добавлении пункта меню Window, который будет отображать домашнюю страницу при нажатии.

Нажмите на Main.storyboard, чтобы отобразить главное меню

Нажмите на элемент меню окна

Нажмите +, чтобы выбрать пункт меню и перетащите его в пункт меню окна

Переименуйте элемент в «Домашнюю страницу» в левом и правом верхних местах

Откройте файл AppDelegate.swift с правой стороны

CTRL + перетащите элемент «Домашняя страница» в файл AppDelegate.swift для создания IBAction

Теперь IBAction готов к заполнению

Скажите действие для отображения представления домашней страницы ( в моем приложении это ContentView ())

Теперь, если мы запустим приложение, у нас появится пункт «Домашняя страница» в окне главного меню, и если мы нажмем на него, мы go ContentView ( ) это домашняя страница моего приложения.

Код действия:

@IBAction func DisplayHomePAge(_ sender: NSMenuItem) {
window.contentView = NSHostingView(rootView: ContentView())

}

...