0

私のチタンサンプルコードは次のとおりです。

タブを作成する私のメインファイルは次のとおりです、

globals.tabs = new AppTabGroup(
            {
                title: 'Waiting',
                icon: 'images/KS_nav_ui.png',
                window: new ListWindow({
                    title: 'Waiting',
                    backgroundColor: '#fff',
                    navBarHidden: false,
                    isDone: 0,
                    activity: {
                        onCreateOptionsMenu: function(e) {
                            var menu = e.menu;
                            var menuItem = menu.add({ title: "Add Customer" });
                            menuItem.setIcon("images/ic_menu_add.png");

                            var menuItem1 = menu.add({ title: "Settings" });
                            menuItem1.setIcon("images/ic_menu_add.png");

                            menuItem.addEventListener("click", function(e) {
                                new AddWindow().open();
                            });
                        }
                    }
                })
            },
            {
                title: 'Done',
                icon: 'images/KS_nav_views.png',
                window: new ListWindow({
                    title: 'Done',
                    backgroundColor: '#fff',
                    navBarHidden: false,
                    isDone: 1
                })
            }
        );

新しいAppTabGroupは、1つのタブグループを作成し、これら2つのタブを追加します+currentabを設定します

したがって、デフォルトでは、[待機中]タブにフォーカスがあります。

新しいリストウィンドウは次のように説明されます。

exports.ListWindow = function(args) {
    var AddWindow = require('ui/AddWindow').AddWindow;
    var self = Ti.UI.createWindow(args);
    var tableview = Ti.UI.createTableView();

    setTableHandle(tableview);

    var isDone = args.isDone;
    Ti.API.info("isDOne chi value:  " + isDone);

    self.add(tableview);

    tableview.addEventListener('click', function(e) {
        createConfirmDialog(e.row.id, e.row.title, isDone).show();
    });

    Ti.App.addEventListener('app:updateTables', function() {
        //tableview.setData(getTableData(isDone));
        tableview.setData(o9Data);
    });

    return self;
};

これで、デフォルトでテーブルビューデータ(上記のコードのo9Data)(httpclientからフェッチ)は常に2番目のタブに設定され
、isDoneの値を変更しましたが、機能していません

どんな助けでも大歓迎です

これがデータ付きの2番目のスクリーンショットです、 ここに画像の説明を入力してください

4

1 に答える 1

0

最後にこれに対する解決策を見つけました、

これはすべてのタブに共通のコードであり、次の行を使用したため、

setTableHandle(tableview);

データをテーブルに設定するための tableview 変数を設定しただけで、この get は最後のタブによってオーバーライドされるため、最初またはすべての (最後を除く) タブに値を追加できませんでした。

于 2012-10-28T06:24:31.027 に答える