I'm experiencing this weird issue where on every third launch or so of my sencha touch 2.2 android phonegap app all my list items render on top of each other. As soon as you drag the list a bit it sorts itself out.
Tried a bunch of things: changing all configs on my list, removing all my custom css, adding a scroll function that scrolls down and then up again after the list has finished rendering, but to no avail.
Any ideas?
Update: Better description of the setup.
The list is inside of a navigationview which, in turn, is inside a slidenavigationview (github.com/wnielson/sencha-SlideNavigation).
The store is set on initialization of the list view.
List definition (a little bit simplified):
Ext.define('Labblistan.view.LabList', {
extend: 'Ext.dataview.List',
xtype: 'lablist',
requires: [
'Labblistan.controller.SearchController',
'Ext.util.DelayedTask',
'Ext.plugin.PullRefresh',
'Ext.SegmentedButton'],
id: 'lablist',
config: {
grouped: true,
infinite: true,
useSimpleItems: true,
variableHeights: true,
plugins: [{
xclass: 'Ext.plugin.PullRefresh',
pullRefreshText: 'Dra ned för att uppdatera!',
lastUpdatedText: 'Senast uppdaterad',
loadingText: 'Förbereder uppdatering',
releaseRefreshText: 'Släpp för att uppdatera!',
refreshFn: function (plugin) {
confirmUpdate();
}
}],
itemTpl: itemtemplate, //long and kinda complicated so I didn't include it here
onItemDisclosure: true,
disableSelection: true,
indexBar: {
right: '-10px'
},
loadingText: 'Laddar',
iconmask: true,
scrollToTopOnRefresh: false,
cls: 'listan',
items: items, //Contains another toolbar with some buttons for improved sorting
listeners: {
initialize: function () {
console.log('initialize list');
var dynstore = Ext.getStore('LabListStore');
this.setStore(dynstore);
},
painted: function () {
console.log('painted list');
setTimeout(function () {
Ext.getCmp('listbar').enable();
}, 600);
Ext.Viewport.setMasked(false);
return false;
},
hide: function () {
console.log('hide list');
return false;
}
}
}
});