1

Titanium を使用した新しいモバイル プロジェクトに、通常のコンテキスト (Web アプリ開発) を適用しすぎているのではないかと思います。いくつかのボタンを含むホーム画面があります。完全に新しいコンテンツを含む新しいウィンドウを開くには、各ボタンが必要です。私の頭の中では、新しいウィンドウを作成して開くと、既存のコンテンツが新しいウィンドウに完全に置き換えられるという点で、ウィンドウはリクエストやページのように機能すると想定していました。そうではないようです (または、私は恐ろしく、恐ろしく間違ったことをしています)。私のホーム画面では、1 つのボタンのイベント ハンドラーを次に示します。

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: 0height: 'auto'さらには新しいウィンドウのfullscreen値を true に設定しましたが、何も機能しません。

まず、「リンク」はモバイル空間でどのように機能しますか? これに関する私の思考プロセス全体を再調整する必要があると本当に思います.2番目に、新しいウィンドウが下にあるホーム画面ウィンドウを完全に覆い隠すにはどうすればよいですか?

ご協力いただきありがとうございます。

4

1 に答える 1

1

ウィンドウを置き換えるのではなく、実際に新しいウィンドウを作成して開きます。

達成しようとしていることに応じて、おそらくモーダル ウィンドウを作成する必要があります。

方法は次のとおりです。

var newWin = Ti.UI.createWindow({
    modal: true,
    title: 'new Window',
    navBarHidden: false
});

// adding a button to close the window again:

var button = Ti.UI.createButton({
    title: 'Close'
});

button.addEventListener('click',function(){
    newWin.close();
    newWin.hide();
});

win.leftNavButton = button;

newWin.open();

このウィンドウを使用すると、あらゆる種類の操作を実行したり、ビューを追加したりできます。

于 2011-10-14T17:23:53.583 に答える