Skip to content

RadListView iOS: loadOnDemand feels stuttering when scrolling down fast #1300

Open
@felixkrautschuk

Description

@felixkrautschuk

Tell us about the problem

We need some local loadOnDemand functionality, as displaying a larger set of data needs some time to be actually displayed in RadListView on iOS. So we load the whole data-set from the server at once, but we push only portions of this data into the ObservableArray, one after the other.
Unfortunately, the loadOnDemand functionality does not feel smooth when scrolling down fast on our phical device iPhone 6 with iOS 12.4. On Android, it feels very smooth and you actually do not recognize that the RadListView uses the loadOnDemand feature and it feels like the whole data-set was already in the ObservableArray from the beginning.

This is our page bindingcontext:

    items: new observableArrayModule.ObservableArray(),

    itemsRemaining: [],
    pageSize: 20,

    loadData: function() {
        var self = this;

        return new Promise(function (resolve, reject) {
            http.getJSON("https://restcountries.eu/rest/v2/all").then(function(response) {
                self.set('itemsRemaining', response);

                self.get("items").splice(0);
                self.get("items").push(self.get("itemsRemaining").splice(0, self.get("pageSize")));

                resolve();
            }, function (e) {
                console.log(e);
                reject();
            });
        });
    }

Which platform(s) does your issue occur on?

iOS

Please provide the following version numbers that your issue occurs with:

  • Progress NativeScript UI plugin version: 7.1.0
  • CLI: (6.1.2
  • Cross-platform modules: 6.1.2
  • Runtime(s): tns-android 6.1.2, tns-ios 6.1.1

Please tell us how to recreate the issue in as much detail as possible.

  1. Start the application ..
  2. scroll down fast and compare the result on an iOS physical device and an Android physical device

Is there code involved? If so, please share the minimal amount of code needed to recreate the problem.

RlvLoadOnDemandIssueIOS.zip

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions