2013-03-23 34 views
0

我有一個列表:活動兩個煎茶觸摸導航視圖

Ext.define('my.view.ProgramList', { 
    extend: 'Ext.dataview.List', 
    xtype: 'programlist', 
    ... 
} 

我想這個名單是起點,兩個導航觀點:

Ext.define("my.view.ProgramNavigationView", { 
    extend: 'Ext.navigation.View', 
    xtype: 'programnavigationview', 
    ... 
    items: [{ 
    xtype: 'programlist', 
    itemId: 'programlist' 
    }] 
} 

Ext.define("my.view.FacebookNavigationView", { 
    extend: 'Ext.navigation.View', 
    xtype: 'facebooknavigationview', 
    ... 
    items: [{ 
    xtype: 'programlist', 
    itemId: 'programlist' 
    }] 
} 

問題:如何我是否在控制器中處理tap事件並分別處理這兩個事件?在我的控制,我有:

refs: { 
    programlist: 'programlist', 
    facebooknavigationview: 'facebooknavigationview', 
    programnavigationview: 'programnavigationview', ... 
}, 

我已經試過這樣:

control: { 
    programlist: { 
    initialize: 'initProgramData' 
    }, 
    facebooknavigationview: { 
    itemtap: 'showFacebookGroup' 
    }, 
    programnavigationview: { 
    itemtap: 'showProgramData' 
    }, 

希望的itemtap就泡了,我可以應付不同的facebooknavigationview主場迎戰programnavigationview,但它不。我可以將itemtap放入程序列表中,並且它會觸發,但是我無法分辨兩個導航視圖之間的區別;我不知道我是否可以搜索層次結構,但這看起來很醜陋。我錯過了什麼?

+0

爲'facebooknavigationview'創建單獨列表太多了嗎? – cclerville 2013-03-24 03:27:25

+0

我可以做到這一點...雖然不是非常乾燥。 – fool4jesus 2013-03-24 20:59:58

+0

哈哈真的。那麼你是什麼意思,你不能說出兩個導航視圖之間的區別?這兩個導航視圖顯示的數據是否相同? – cclerville 2013-03-24 21:53:53

回答

1

您可以添加參考使用父來幫助區分,其中抽頭從例如即將到來,如果你有以下幾點看法:

Ext.define("my.view.ProgramNavigationView", { 
    extend: 'Ext.navigation.View', 
    xtype: 'programnavigationview', 
    ... 
    items: [{ 
    xtype: 'programlist', 
    itemId: 'programlist' 
    }] 
} 

Ext.define("my.view.FacebookNavigationView", { 
    extend: 'Ext.navigation.View', 
    xtype: 'facebooknavigationview', 
    ... 
    items: [{ 
    xtype: 'programlist', 
    itemId: 'programlist' 
    }] 
} 

你可以使用下面的裁判:

refs: { 
    programlist: 'programlist', 
    facebooknavigationview: 'facebooknavigationview programlist', 
    programnavigationview: 'programnavigationview programlist', ... 
}, 
control: { 
    programlist: { 
    initialize: 'initProgramData' 
    }, 
    facebooknavigationview: { 
    itemtap: 'showFacebookGroup' 
    }, 
    programnavigationview: { 
    itemtap: 'showProgramData' 
    }, 

現在,項目水龍頭正在監聽,當它們顯示在父視圖內時。