【问题标题】:Sencha Touch Navigation View Auto Destroy煎茶触摸导航视图自动销毁
【发布时间】:2012-10-01 21:28:58
【问题描述】:

我正在使用 Sencha Touch 2 中的导航视图在我的应用程序中提供视图导航。

目前我正在使用在控制器的启动方法中创建视图对象(比如"VOCABI.view.Search",使用xtype "searchview")的方法,并通过在控制器配置中包含以下内容来引用它:

refs: {
    searchView: 'searchview'
}

当我想展示搜索视图时,我将它推送到导航视图中,如下所示:

navView = this.getNavView();                  // Defined
navView.push([this.getSearchView()]);         // Defined by refs

问题是当用户完成搜索并按下视图上的后退按钮时,searchView 似乎已被破坏,因此下次用户想要搜索某些内容时会引起麻烦,因为现在使用 getSearchView() 方法返回空值。

这是导航视图的默认行为,它在调用方法pop() 时破坏弹出视图?

如果是这样,每次呈现时都创建搜索视图是不是一个糟糕的解决方法?喜欢

Ext.create("VOCABI.view.Search");
this.getNavView().push([this.getSearchView()]); 

非常感谢您的帮助!

【问题讨论】:

    标签: sencha-touch sencha-touch-2


    【解决方案1】:

    你必须添加导航视图的配置

    autoDestory:false
    

    因此,您的搜索视图不会在导航视图的弹出事件中被破坏

    【讨论】:

      【解决方案2】:

      一旦弹出,在 Sencha Touch 2.0 中默认 NavigatioView 将销毁该子组件。因此,对于您的情况,您可以放心使用它:

      navView.push({
         xtype : 'searchview'
      }); 
      

      您可以强制不破坏 NavigationView 的子组件。但是,对于您的情况,无论如何,破坏似乎是一种好习惯。

      【讨论】:

        猜你喜欢
        • 2012-11-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多