Old McStopher
Old McStopher

Reputation: 6349

Sencha Touch: Disable scrolling for a Panel, List, or DataView?

I see that panels have the option to set scroll: to horizontal or vertical, but is there any way to do something like: scroll: 'false'? I've tried such without luck.

I have a DataView nested in a Panel. I can set the scroll direction of each independently, but I want the DataView not to scroll at all.

[Any tips will earn answer points and a digital high five. Heck, I'll even throw in a bonus high SIX!]

Upvotes: 4

Views: 12675

Answers (4)

Nazar Vynnytskyi
Nazar Vynnytskyi

Reputation: 4727

You should setScrollable to false for your component.

Here is the example:

//'.items' CSS class or other selector
var itemsId = pageEl.up('.items').id;

//Find component
var itemsCmp = Ext.getCmp(itemsId);

//You can skip two previous lines in case you already have needed component
itemsCmp.setScrollable(false);

Upvotes: 0

Martin Bories
Martin Bories

Reputation: 1117

For Sencha Touch 2 users scroll can be disabled using the following config:

config: {
   scrollable: false
}

http://docs.sencha.com/touch/2-1/#!/api/Ext.Panel-cfg-scrollable

Upvotes: 3

gamozzii
gamozzii

Reputation: 3921

I think this relates to the fact that in javascript, strings (e.g. 'false', "false") are evaluated to true if not null. So "false", 'false', "true", 'true', 'junk', 'absce' all evaluate to true. So by setting the attribute value scroll:'false' or scroll:"false" it is actually setting it to true. Using the non-quoted false on the other hand is actually passing a proper boolean false value.

Upvotes: 4

Old McStopher
Old McStopher

Reputation: 6349

Okay, turns out by fudging around a bit (as I've learned to do with poorly documented Sencha Touch) that disabling the scroll can be done as follows:

scroll: false

Note the absence of single or double quotes when setting scroll: to false. The values horizontal and vertical, however can be done with single or double quotes.

Upvotes: 5

Related Questions