0

当视图被推送并弹出到视图堆栈上时,我希望能够在导航视图栏中隐藏和显示某些按钮。遗憾的是,我无法从视图配置本身控制它(但我会再保存那个呻吟声)。

我想知道在导航视图上推送/弹出视图时应该使用哪些事件。医生有时会撒谎,我多次被告知不要太相信它,所以我不是!加油 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);
    }

这些东西实际上是否正常工作,即当视图被推送和弹出时,是否有保证触发的具体事件?

4

2 回答 2

0

首先 - 您的代码中有错字。您需要参考activatedeactivate不是activate_ddeactivate_d

其次,我会尝试订阅导航视图pushpop事件,看看它是否能让你得到你想要的。

于 2013-05-11T17:08:25.097 回答
0

我有同样的问题。我使用画处理程序来解决它。您无法在控制器 中处理已绘制事件描述中的“绘制”事件

于 2014-07-27T11:47:43.723 回答