2012-10-16 27 views
0

我一直在研究如何在Sencha Touch上使用MVC引用一個按鈕的方法,但沒有一篇文章對我工作正常,因爲我聲明瞭我的視圖的構造函數上的所有控件。引用在Sencha Touch 2上從Controller的構造函數中創建的按鈕?

這裏是我的代碼示例:

Ext.define('TPTMOBILE.view.Login',{ 
    extend: 'Ext.Panel', 
    ... 
    config: { 
     ... 
    }, 

    constructor: function(){ 
     var submitButton = Ext.create('Ext.Button', { 
      text: 'Login' 
     }); 
    } 

}); 

所以我想知道如何引用我的「submiButton」按鈕的方法的onTap。

在此先感謝。

回答

2

你的構造方法不靈,試試這個來代替:

constructor: function(config){ 
    this.callParent(config); 
    this.add(
     { 
      xtype: "button", 
      text: 'Login', 
      action: 'doTap' 
     } 
    ); 
} 

constructor方法必須包含以通過配置對象的父類的構造,否則它不會工作到callParent通話。

之後,你可以通過多種方式來實現你的onTap方法上的按鈕,但由於要使用MVC上煎茶觸摸,所以你可以在你的控制器設置按鈕的動作

action: 'doTap' 

然後你可以做如下,以該按鈕時,竊聽運行代碼:

refs: { 
    doTap: 'button[action=doTap]' 
}, 

control: { 
    doTap: { 
     tap: 'doTap' 
    }, 
}, 

doTap: function() { 
    alert('doTap function activvated'); 
} 

希望它能幫助:)

相關問題