ProgressNS / nativescript-ui-feedback

This repository is used for customer feedback regarding Telerik UI for NativeScript. The issues system here is used by customers who want to submit their feature requests or vote for existing ones.
Other
115 stars 21 forks source link

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

Open felixkrautschuk opened 4 years ago

felixkrautschuk commented 4 years ago

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:

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

VladimirAmiorkov commented 4 years ago

Hi @felixkrautschuk ,

We are aware of this limitations and issues that the "Load on Demand" functionality currently has on iOS and we are planning to address them in a major refactoring of this functionality in on of our future releases.

We hope to be able to address this as soon as possible.