Я думаю, что могу применить слишком много своего обычного контекста (разработка веб-приложений) к новому мобильному проекту с использованием Titanium. У меня есть домашний экран с несколькими кнопками. Мне нужно, чтобы каждая кнопка открывала новое окно с совершенно новым содержимым. В своей голове я просто предполагал, что окна будут работать как запросы или страницы, в которых создание и открытие нового окна полностью заменит существующий контент новым. Кажется, это не так (или я делаю что-то ужасно, ужасно неправильно). На моем домашнем экране вот обработчик события для одной кнопки:
btn_er_app.addEventListener( 'click', function( e ) {
var win = Ti.UI.createWindow({
bottom: 0,
title: 'Next "Page"',
top: 0,
url: 'next_page.js',
});
win.open({ animated: true });
});
Моя next_page.js
страница выглядит так (фрагмент):
var win = Ti.UI.currentWindow;
win.layout = 'vertical';
var header = Ti.UI.createView({
backgroundColor: '#f00',
height: 60,
top: 0,
});
win.add( header );
var body = Ti.UI.createView({
backgroundColor:'#000',
backgroundImage: '/images/body.png',
});
var label = Ti.UI.createLabel({
text: 'Page Bits Go Here',
textAlign: 'center',
});
body.add( label );
win.add( body );
Я обнаружил, что содержимое главного экрана все еще видно. Отображается красный блок заголовка, но не вид тела. Я пытался установить свойства: height: '100%'
, bottom: 0
, height: 'auto'
и даже установить значение fullscreen
нового окна в true, но ничего не работает.
Во-первых, как работает «связывание» в мобильном пространстве? Я действительно думаю, что весь мой мыслительный процесс по этому поводу должен быть перестроен, и, во-вторых, что мне нужно сделать, чтобы мое новое окно полностью скрывало основное окно домашнего экрана?
Спасибо за вашу помощь.