在TabPanel上点击时如何在控制器上调用函数? Sencha Touch 2 [英] how to call a function on a controller when Tapping on TabPanel? Sencha Touch 2

查看:153
本文介绍了在TabPanel上点击时如何在控制器上调用函数? Sencha Touch 2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Sencha Touch 2中有一个控制器和一个TabPanel,我想在TabPanel上点击一个元素时调用一个函数:

I have a controller and a TabPanel in Sencha Touch 2, I want to call a function when an element is tapped on the TabPanel:

TabPanel.js

TabPanel.js

Ext.define('app.view.principalTabPanel', {
    extend: 'Ext.tab.Panel',
    alias: 'widget.ptabpanel',
    config: {
        ui: 'light',
        items: [
            {
                xtype: 'container',
                itemId: 'idContnr',
                title: 'tap Me!',
                iconCls: 'bookmarks'
            }
        ],
        tabBar: {
            docked: 'bottom',
            ui: 'light'
        }
    }
});

controller.js

controller.js

Ext.define('app.controller.mainController', {
    extend: 'Ext.app.Controller',
    config: {
        control: {
            "ptabpanel #idContnr": {
                tap: 'takePhoto'
            }
        }
    },
    takePhoto: function() {
        console.log('toma foto!'); // Not Working :(
    }
});

推荐答案

与其监听标签上的"tap"事件,不如监听标签面板上的"activeitemchange". 参见 http://docs.sencha .com/touch/2-0/#!/api/Ext.tab.Panel-event-activeitemchange

Instead of listening to 'tap' events on the tabs, you should listen to 'activeitemchange' on the tabpanel itself. See http://docs.sencha.com/touch/2-0/#!/api/Ext.tab.Panel-event-activeitemchange

这篇关于在TabPanel上点击时如何在控制器上调用函数? Sencha Touch 2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆