2012-07-17 121 views
1

我有一個容器的頭部,內容(旋轉木馬)和頁腳。容器本身是可滾動的(垂直)以能夠向下滾動到頁腳。旋轉木馬可以水平滑動以改變活動項目。我想鎖定它做的只有兩件事:防止可滾動容器(Sencha 2)內的傳送帶滾動?

  • 如果開始垂直移動,只有滾動集裝箱
  • 如果開始水平移動,只有滾動旋轉木馬

如果你現在搶旋轉木馬您可以同時滾動兩種方式。示例代碼:

Ext.define('MyApp.view.MyContainer', { 
    extend: 'Ext.Container', 

    config: { 
     scrollable: true, 
     items: [ 
      { 
       xtype: 'container', 
       items: [ 
        { 
         xtype: 'label', 
         html: 'abc' 
        } 
       ] 
      }, 
      { 
       xtype: 'carousel', 
       height: 200, 
       scrollable: false, 
       items: [ 
        { 
         xtype: 'label', 
         html: 'x' 
        }, 
        { 
         xtype: 'label', 
         html: 'y<br/>y<br/>y<br/>y<br/>y<br/>y<br/>y<br/>y' 
        } 
       ] 
      }, 
      { 
       xtype: 'container', 
       items: [ 
        { 
         xtype: 'label', 
         html: 'def' 
        } 
       ] 
      } 
     ] 
    } 

}); 

使用煎茶觸摸2.

回答

1

如果開始水平移動,只有滾動旋轉木馬

只需添加到您的容器的配置:

config: { 
    scrollable: { 
    direction: 'vertical', 
    directionLock:true 
    } 
} 

垂直滾動時我還沒有想出如何鎖定旋轉木馬。如果我知道,我會通知你。

1

試試這個。它對我來說工作得很好。

Ext.define('MyApp.view.MyContainer', { 
    extend: 'Ext.Container', 

    config: { 
     scrollable: { 
      direction: 'vertical' 
     }, 
     items: [ 
      { 
       xtype: 'container', 
       items: [ 
        { 
         xtype: 'label', 
         html: 'abc' 
        } 
       ] 
      }, 
      { 
       xtype: 'carousel', 
       height: 200, 
       direction: 'horizontal', 
       directionLock: true, 
       items: [ 
        { 
         xtype: 'label', 
         html: 'x' 
        }, 
        { 
         xtype: 'label', 
         html: 'y<br/>y<br/>y<br/>y<br/>y<br/>y<br/>y<br/>y' 
        } 
       ] 
      }, 
      { 
       xtype: 'container', 
       items: [ 
        { 
         xtype: 'label', 
         html: 'def' 
        } 
       ] 
      } 
     ] 
    } 
}); 
2

您可能需要阻止在滾動。這將有助於防止對垂直滾動和旋轉木馬項目變更,在同一time.Try裏面發生的滾動容器的驗證碼。

scrollable: { 
      directionLock: true, 
      direction: 'vertical', 
      momentumEasing: { 
      momentum: { 
       acceleration: 30, 
       friction: 0.5 
      }, 
      bounce: { 
       acceleration: 0.0001, 
       springTension: 0.9999, 
      }, 
      minVelocity: 3 
      }, 
      outOfBoundRestrictFactor: 0 
     },