2013-08-14 4 views
0

Я новичок в Sencha Touch 2, и у меня есть проблема с использованием вложенного списка: дубликатов панели инструментов вместе с кнопкой возврата, поэтому в конце вложенного списка у меня есть 3 панели инструментов с 3 кнопками возврата. Я предполагаю, что причина в том, что я создаю Ext.nestedList для каждой подробной карты, useToolbar: false не исправляет проблему, потому что тогда я не могу перейти в предыдущий список. Может быть, кнопка назад должна быть перезаписана, но я понятия не имею об этом. Любая помощь будет очень полезна. Вот верхняя часть кода:Sencha Touch toolbar duplicating

Ext.define('ListItem', { 
    extend: 'Ext.data.Model', 
    config: { 
     fields: ['text'], 
    }, 

}); 

var treeStore = Ext.create("Ext.NestedList", { 

    fullscreen: true, 
    tabBarPosition: 'bottom', 

    title: 'Now-Yakutsk', 
    iconCls: 'star', 
    displayField: 'title', 
    layout: 'card', 

    store: { 
     type: 'tree', 
     id: 'ListCard', 
     fields: [ 
      'title','code', 
      {name: 'leaf', defaultValue: true} 
     ], 

     root: { 
      leaf: false 
     }, 

     proxy: { 
      type: 'jsonp', 
      url: 'http://now/catlist.php', 
      reader: { 
       type: 'json', 
       rootProperty: 'cat' 
      } 
     } 
    },                  

    listeners: { 

       leafitemtap: function(nestedList, list, index, target, record) { 

        var treeStore2 = Ext.create("Ext.NestedList", { 

        fullscreen: true, 
        tabBarPosition: 'bottom', 
        //useToolbar:false, 

         //leaf: true , 
         iconCls: 'star', 
         displayField: 'title', 

        store: { 
         type: 'tree', 
         id: 'detailCard', 
         fields: [ 
          'title','code','link', 
          {name: 'leaf', defaultValue: true} 
         ], 

         root: { 
          leaf: false 
         }, 

         proxy: { 
          type: 'jsonp', 
          url: 'http://now/catlist2.php', 
          reader: { 
           type: 'json', 
           rootProperty: 'cat' 
          } 
         } 
        }, 

        detailCard: { useToolbar:true, 
            xtype: 'panel', 
            scrollable: true, 
            styleHtmlContent: true 
           }, 

        listeners: { 

         leafitemtap: function(nestedList, list, index, target, record) { 
          var cin = Ext.create("Ext.NestedList", { 
           fullscreen: true, 
           tabBarPosition: 'bottom', 
           //useToolbar:false, 
             //title: 'Blog', 
             iconCls: 'star', 
             displayField: 'list', 

             store: { 
              type: 'tree', 

              fields: [ 
               'name', 'link', 'list', 'image', 'adress', 'banner', 
               {name: 'leaf', defaultValue: true} 
              ], 

              root: { 
               leaf: false 
              }, 

              proxy: { 
               type: 'jsonp', 
               url: 'http://now/cinemalist.php', 
               reader: { 
                type: 'json', 
                rootProperty: 'cinema' 
               } 
              } 
             }, 

             detailCard: { 
              xtype: 'panel', 
              scrollable: true, 
              styleHtmlContent: true 
             }, 

             listeners: { 
              leafitemtap: function(nestedList, list, index, element, post) { 
               this.getDetailCard().setHtml(post.get('banner')); 
              } 
             } 


          }); 

и скриншот:

http://piccy.info/view3/4985552/cdfd1dcca3928d4a5d4b4b41ba060b1f/

ответ

0

нашел решение в случае, если кто-то имеет такую ​​же проблему -The точка Скрытие и отображение панели инструментов, играя с активным Неактивно методы , например, в родителю мы создаем

    listeners: { activate : function() { 
         //this.getToolbar().hide(); 
         tb = this.getToolbar(); 

         } , 
         deactivate: function() { 
         //this.getToolbar().hide();       


} 

затем в ребенка, то р ут

listeners: { 
          activate : function() {   
                  tb1 = this.getToolbar(); 
                  tb1.hide(); 
                  tb.show(); 


          //this.getToolbar().hide(); 

          } , 
          deactivate: function() {  
           //tb.show(); 
           //alert('dd'); 
          //this.getToolbar().hide();       

    } 

и так далее ...