FNC TableView struggling to scroll


While using the FNC TableView I noticed the scrolling is not smooth on phone, I have a bitmap and a button on each items.


Is there a way to control the buffer ? Or am I just missing an option from the FNCTableView ?

Very best regards,


We have already improved the HTML drawing behaviour, which will be available in the next release and should improve the performance. For the images, are you using high-quality images or a thumbnail version?

Thank you for your reply ! I am currently using 48x48 png images.


If you have access to this property, you can try to set it to true:

  TTMSFNCTableViewOpen = class(TTMSFNCTableView);

procedure TForm1.FormCreate(Sender: TObject);
  TTMSFNCTableViewOpen(TMSFNCTableView1).OptimizedHTMLDrawing := True;

It seems to be better but still feels slow. Is there a way to increase scroll speed ?

Are you including the image as a resource in the HTML text or as a separate icon?

All the images are in ressource and we load all the images at once.

Is this an iOS or Android phone? We know that Android is the slowest environment.

We are testing on both. When we were using TMSFMXTableView is was smoothier but the buffer took an eternity to load so we changed for FNC. 

For us the only problem seems to be that the application doesn't do enough repaint when scrolling which could explain that we think it's laggy.


We'll investigate here exactly where the performance bottleneck is in this particular case.
Please note that when HTML is used, the list is generally slower.

Great thank you ! Is there a way to use something else than HTML for the text drawing ? Or where can we override the code that draws the text ?


If you leave out the HTML tags, it should paint without HTML. You can also use a fixed height approach, which leaves out the HTML calculation time:

TMSFNCTableView1.ItemAppearance.HeightMode := tvhmFixed;
TMSFNCTableView1.ItemAppearance.FixedHeight := 150;