Вызов InterfaceController из пункта меню ведет к бесконечному вращающемуся колесу

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

@IBAction func doInfoMenuAction() {
    self.presentControllerWithName("InfoInterfaceController", context: nil)
}

InfoInterfaceController полностью «пустой»:

import Foundation
import WatchKit

class InfoInterfaceController: WKInterfaceController {
}

Когда я добавляю метку в InfoInterfaceController, я получаю странное поведение: после нажатия информационного элемента меню появляется диалоговое окно, но метка не окрашивается. Вместо этого ожидающее вращающееся колесо отображается в бесконечном цикле.

В этом случае InfoInterfaceController выглядит так:

import Foundation
import WatchKit

class InfoInterfaceController: WKInterfaceController {

    @IBOutlet var serverUriLabel: WKInterfaceLabel!
}

IBOutlet был создан путем CTRL-связывания метки из раскадровки с InfoInterfaceController. Если я удалю ссылку и IBOutlet, InfoInterfaceController будет окрашен без проблем. Даже ярлык отображается нормально.

Любая идея, что я делаю неправильно?


person Dirk    schedule 30.12.2015    source источник


Ответы (1)


Я нашел решение: похоже, это та же проблема, что описана здесь:

Ошибка WatchKit - невозможно найти класс контроллера интерфейса '' для создать экземпляр

Что мне нужно было сделать, так это: открыть «Инспектор удостоверений» InfoInterfaceController и выбрать другой InterfaceController.

После этого: Просто переключитесь обратно на InfoInterfaceController в «Инспекторе удостоверений». Очистить и построить, и после этого метка у меня отображается нормально.

Мне кажется баг :-/

person Dirk    schedule 31.12.2015