Sencha Touch 1.1:在列表中选择项目后设置面板属性

时间:2012-03-14 02:07:44

标签: extjs

我正在使用Sencha Touch 1.1。我有一个Ext.List,当用户选择一个项目时,我使用

切换到详细信息页面
rootPanel.setActiveItem('details');

工作正常。现在,我想获取所选项目的详细信息,并在“详细信息”面板中填充属性。我该怎么做?

目前我正在使用此代码将记录传递到详细信息页面的各个面板:

        onItemDisclosure: function (record) {
            // user has selected a Country from the Country List.
            // TODO: There must be a better way to pass the data around

            CountryDetailsToolbar.setTitle(record.data.title);
            var upperData = { upper: record.data.title.toUpperCase()};
            CountryDetailsHeaderLeft.update(upperData);
            CountryDetailsHeaderMonth.update(record.data);

            viewport.setActiveItem('CountryDetailsCarousel');
        }

这对我来说似乎有些混乱。是否有更简洁的方法来设置标题并使用数据“记录”更新面板?

1 个答案:

答案 0 :(得分:0)

您可以使用rootPanel.getActiveItem()来获取当前所选面板的实例,我不确定您在详细信息选项卡中填充属性是什么意思

<强>更新

我认为在面板之间传递记录数据没有任何问题,我认为这是最有效的方式

onItemDisclosure: function (record) {
    // user has selected a Country from the Country List.
    var title = record.get('title');

    CountryDetailsToolbar.setTitle(title);
    CountryDetailsHeaderLeft.update({ upper: title.toUpperCase() });
    CountryDetailsHeaderMonth.update(record.data);

    viewport.setActiveItem('CountryDetailsCarousel');
}