I have a wide Vertical List which I want to scroll horizontally. But I can't figure out the right combination of containers that allow horiz scrolling for the underlying List. When I add width to the parent container, it allows me to scroll and see all content, but if I lift my finger the view snaps back to 0px. If I set parent container's layout:auto, then the x-axis scroller looks correct, but the List disappears and only the header bar remains.
Any suggestions would be appreciated
I made a sample off this senchaFiddle example:
http://www.senchafiddle.com/#dSMpw
Code:
Ext.define('SenchaFiddle.store.Store', {
extend:'Ext.data.Store',
config: {
model:'SenchaFiddle.model.Model',
data:[
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
{icon:'http://www.sencha.com/assets/images/sencha-avatar-64x64.png'},
]
}
});
Ext.define('SenchaFiddle.model.Model', {
extend: 'Ext.data.Model',
config: {
fields: [{
name: 'icon',
type: 'string'
}]
}
});
Ext.Loader.setConfig({
enabled: true
});
Ext.application({
name: 'SenchaFiddle',
models:['Model'],
stores:['Store'],
launch: function() {
var list = Ext.create('Ext.List',{
store: 'Store',
itemTpl: new Ext.XTemplate('<img src="{icon}" width=750 height=50/>'),
flex:1
});
var panel = Ext.create('Ext.Container', {
layout:'fit',
width:750,
scrollable : {
direction : 'horizontal',
directionLock : true
},
items: [
Ext.create('Ext.Container', {
layout:'vbox',
width:750,
items: [
{
html: 'Header bar',
},
list
]
})
]
});
Ext.Viewport.add(panel)
}
});