View Full Version : Picker scroll bug (only when two elements are present)

20 Jul 2011, 3:12 AM
Sencha Touch version tested:


only default ext-all.css

Platform tested against:

iOS 4
Chrome, Safari on Mac


I had I bug when trying to scroll a picker column if only two elements are present.
If I try to scroll on that column, I have this error on the console:

sencha-touch-debug-w-comments.js:34910 (http://getrixapp.maiorana.dev.loc/sencha-touch-debug-w-comments.js?v=2) Uncaught TypeError: Cannot read property 'viewIndex' of undefined

Test Case:

xtype: 'datepickerfield',
name: 'tipo',
label: 'Tipo',
picker: { yearFrom: 2010 }

The result that was expected:

Regular scrolling. The picker goes back to first or second item if I scroll over the bounds.

The result that occurs instead:

Javascript error. The picker goes on an unexistant row after I scroll over the bounds.

Screenshot or Video:


Debugging already done:


Possible fix:

not provided

21 Sep 2011, 12:19 AM
I confirm this bug occurs for any picker type, when it has only 2 elements in list

2 May 2012, 4:39 AM
Here's an override to fix:

Ext.override(Ext.Picker.Slot, {

onScrollEnd: function(scroller, offset) {
var selectedNode = this.getNode(Math.round(offset.y / this.barHeight));
this.selectedNode = selectedNode;
this.selectedIndex = this.indexOf(this.selectedNode);
this.fireEvent('slotpick', this, this.getValue(), this.selectedNode);