Titanium

#view #titanium #titanium-alloy

#Вид #титан #titanium-alloy

Вопрос:

Я начал работать над проектом Alloy amp; Titanium, и мне нужно создать новое окно с новым представлением. Я уже создал файлы и создал контроллер и представление в моем index.js досье.

 function onListClick(e) {
    var win = Alloy.createController('controlPage').getView();
    win.open();
}
  

Это код, который должен открыть новое представление, но…

 Uncaught TypeError: Object View has no method "open"
  

Я сразу же проверил онлайн-ссылку, и на самом деле внутри объекта Ti.UI.View нет модуля «open».

Что я должен делать? controlPage.xml (и относительные файлы .js и .tss) действительно существуют.

Ответ №1:

Ну,

является ли controlPage.xml:

 <Alloy>
  <Window>
  </Window>
</Alloy>
  

Если это так, то вы можете win.open() , поскольку объекты window имеют метод open()

Однако, если у вас действительно есть a view в качестве заголовка, ссылки на Ti.UI.View и т. Д. Указывают, Что вам нужно будет добавить свое представление в родительский контейнер.

Комментарии:

1. Это было представление. Переключение вида на окно (внутри controlPage.xml ) заставил onClick работать идеально. Спасибо за быстрый ответ.