2012-06-07 90 views
0

//這裏我是在按鈕點擊事件上創建覆蓋圖並使用ContentEl加載另一個視圖:''。覆蓋層可以很好地處理動畫,但當用戶選擇覆蓋層中的特定項目時,我需要隱藏該覆蓋層動畫無法在控制器中隱藏隱藏動畫的覆蓋圖

如果(!this.overlay) {

 this.overlay = Ext.Viewport.add({ 
      xtype: 'panel', 
      id:'menuOverlayView', 
      modal: true, 
      hideOnMaskTap: true, 
      centered: true, 
      scroll: 'vertical', 
      autoDestroy:false, 
      floating: true, 
      showAnimation: { 
       type: 'slide', 
       duration: 4000, 
       direction:'down' 
      }, 
      hideAnimation: { 
       type: 'slide', 
       duration: 4000, 
       direction:'up' 
      }, 
      contentEl:'menuViewid', 
      top: Ext.os.deviceType == 'Phone' ? '20%' : '20%', 
      width: Ext.os.deviceType == 'Phone' ? 260 : 700, 
      height: Ext.os.deviceType == 'Phone' ? 220 : 600 
     }); 
    } 

    this.overlay.show(); 

//我的代碼隱藏此疊加在控制器低於。我是訪問面板標識和隱藏面板,但面板應與動畫像躲正如我上面hideAnimation提到

var overlayView=Ext.getCmp('menuOverlayView');  
overlayView.setHidden(true); 

//所以我應該做與平滑滾動隱藏面板了..我writingng下面的句子,但工作不給錯誤

overlayView.hideAnimation({type: 'slide', direction: 'up', duration:1000}); 

回答

1

要隱藏覆蓋panel,你需要調用panel'shide()方法。

Ext.getCmp('menuOverlayView').hide(); 

然後試試你的hideAnimation代碼。

+0

你可以使用overlayView.hide()方法隱藏動畫。但是覆蓋不能在設備上正確呈現可能是問題。我添加了一些像TouchStyle應用程序文本的圖像,並創建一個停靠在工具欄頂部的菜單。點擊項目點擊我重定向到另一個視圖,但是當構建本機apk整個事情搞亂了,內容不顯示.. – swathi001