Показывать лист при первой загрузке главного окна

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

Я попытался поместить executeSegue(withIdentifier: sender:) в viewDidLoad(), однако он просто загружает лист и ничего больше.

override func viewDidLoad() {
    super.viewDidLoad()
    performSegue(withIdentifier: NSStoryboardSegue.Identifier(rawValue: "browse"), sender: self)
}

Я хочу, чтобы главное окно загрузилось, а затем лист скользнул вниз сразу после того, как попросил пользователя открыть файл.

Куда я должен положить executeSegue или есть другой способ, которым я должен делать это?

1 ответ

@mschmidt прав, я считаю; вам нужно будет выполнить переход от или или подобного; представление должно быть отображено, прежде чем вы сможете перейти от него.

Обратите внимание, что это будет срабатывать при отрисовке вида, независимо от того, находится ли он в фокусе; будет срабатывать только тогда, когда ваше приложение станет самым передним приложением; вы можете работать в другом приложении, но по-прежнему можете видеть окна своего приложения на экране, и в этом состоянии, возможно, еще не запущено.

И да, оба а также будет срабатывать каждый раз, когда появляется представление или окно становится основным, то есть, если вы свернете приложение, а затем развернете его, оба будут срабатывать снова. Поэтому вам понадобится какой-то способ гарантировать, что ваш переход не будет отображаться снова каждый раз, если вы этого не хотите. Простой логический флаг, например должен добиться этого.

Другие вопросы по тегам