2013-05-11 70 views
0

我希望能夠在推送視圖並將其彈出到視圖堆棧時隱藏和顯示導航視圖欄中的某些按鈕。恥辱我無法控制從視圖配置本身(但我會保存呻吟再次)。顯示和隱藏Sencha觸摸導航視圖的事件

我想知道在導航視圖上按下/彈出視圖時應使用哪些事件。文件有時會說謊,而且我多次被告知不太相信它,所以我不是!加入Sencha,微軟不會放過這個! 那麼有什麼想法?當我嘗試打印出所有的事件的看法,我得到非常不可靠的行爲:

什麼,我發現: 當我一個觀點,我得到:

initialize 
hide 
show 

當我流行一個觀點,我得到:

hide 
show 

什麼翻蓋是怎麼回事?!?

顯示事件發生代碼:

control: {   
      myViewRef: {     
       initialize: function() { console.log("initialize") }, 
       activated: function() { console.log("activated") }, 
       deactivated: function() { console.log("deactivated") }, 
       painted: function() { console.log("painted") }, 
       show: function() { console.log("show") }, 
       hide: function() { console.log("hide") } 
      }, 
    } 

實際推/彈出一個視圖代碼:

onInBoxListViewItemTap: function(scope, index, item, record) { 
     console.log("onInBoxListViewItemTap"); 

     var detailsView = this.getEnquiryDetailsViewRef(); 

     // push view 
     var navview = this.getMyInboxViewRef(); 
     navview.push(detailsView); 
    } 

難道這東西居然能正常工作,即是否有具體的事件當視圖被推出並彈出時,它們是否能夠保證觸發?

+0

您如何推/彈出視圖?你可以在你創建並顯示視圖的地方發佈代碼嗎? – sha 2013-05-11 15:28:46

+0

添加代碼更新。 – jaffa 2013-05-11 15:36:26

+0

你真的可以把示例應用程序jsfiddle或類似的東西嗎?沒有足夠的信息來幫助你。 – sha 2013-05-11 15:58:46

回答

0

首先 - 您的代碼中存在拼寫錯誤。您需要參考activatedeactivate而不是activate_ddeactivate_d。其次,我會嘗試訂閱導航視圖的pushpop事件,看看它是否會得到你想要的。

+0

不確定有關activate_d和deactivate_d,但推/彈出事件最終是有用的。我隱藏並顯示取決於哪個視圖被推入/彈出。 – jaffa 2013-05-16 15:27:58