tableview issue at rotating on iOS with detailview controls assigned

Hello

You have an issue on iOS, when my App use the gyroscope and turn horizontal or vertical and I have a tableview with detailview components assigned it shows an error.

This not happend on Windows or Android.... why?

Take a look at the next video
https://timbralofacil.com/descargas/Borrar.mp4

I saw an access violation in your video, is this the error you are referring to? Please provide more details, and a sample to reproduce this issue.

Indeed, that is the error, but happends only in iOS not Android or Windows.

Create a new project, put a TABCONTROL with al least 2 TabItems.

Inside tabitems put a tableview with items and detailview controls assigned to another controls like tableviews or fmxedit controls.

When you run the project rotate the mobile App so orientation must be in portrait or landscape modes, now change the tabitem and do the same rotate the mobile, return to the other tabitem and you see the issue

That's a strange behavior, on which RAD Studio are you testing this?

Alexandria 11.2 with latest FMX UI pack

What happend?

Hi,

We have further investigated this here but unfortunately we were not able to reproduce the access violation. Please provide a proper sample, step by step instructions on how to reproduce the issue. It could be a control issue, or an application issue, if so we still need to know the exact properties and steps to reproduce.

You need to code a sample where it's a main tableview with al least 10 items, 7 of them specify "detailcontrol" property that point to another controls like TMSFMXEdit or TMSTableView inside.

Once you entered on a detail item and use the gyroscope you will see the access violation.

I use the next code on the main TableView for show or hide controls

procedure TablaFinalizarTransaccionItemClick(Sender: TObject;
AItem: TTMSFMXTableViewItem);
begin
Case AItem.Tag of
// Días de Crédito
0:
Begin
ListaMoneda.Visible := False;
TipoCambio.Visible := False;
ImportePago.Visible := False;
ListaFormaPago.Visible := False;
ListaEmail.Visible := False;
ListaUsuarios.Visible := False;
Observaciones.Visible := False;
PlazoPago.SetFocus;
End;
// Moneda
1:
Begin
PlazoPago.Visible := False;
TipoCambio.Visible := False;
ImportePago.Visible := False;
ListaFormaPago.Visible := False;
ListaEmail.Visible := False;
ListaUsuarios.Visible := False;
Observaciones.Visible := False;
End;
// Tipo de Cambio
2:
Begin
PlazoPago.Visible := False;
ImportePago.Visible := False;
ListaMoneda.Visible := False;
ListaFormaPago.Visible := False;
ListaEmail.Visible := False;
ListaUsuarios.Visible := False;
Observaciones.Visible := False;
TipoCambio.SetFocus;
End;
// Vendedor
3:
Begin
PlazoPago.Visible := False;
ImportePago.Visible := False;
ListaMoneda.Visible := False;
TipoCambio.Visible := False;
ListaFormaPago.Visible := False;
ListaEmail.Visible := False;
Observaciones.Visible := False;
End;
// Plantilla de Impresión
4:
Begin
PlazoPago.Visible := False;
ImportePago.Visible := False;
ListaMoneda.Visible := False;
TipoCambio.Visible := False;
ListaFormaPago.Visible := False;
ListaEmail.Visible := False;
ListaUsuarios.Visible := False;
Observaciones.Visible := False;
End;
End;

Please respond me ASAP

Please understand that we have been trying to reproduce the access violation based on the video, but failed to do so, because of missing information. It's clearly a combination of various elements in your application that are unique to the issue. Again, please try to isolate the issue so we can investigate here what is going on. A small sample, reproducing the issue will allow us to further investigate so we can find a cause.

ErrorTMS.zip (213.7 KB)

Above is the ZIP source file of one of my screens with issues.

You must compile for iOS and test it in your own devices.

The issue presents once you enter any row with detail arrow and then use the gyroscope to rotate the device, after that event the error is showing.

What happend with the solution for iOS?

I sent the code you ask for 9 days ago

We have a lot ongoing at the moment. We will investigate as soon as time permits. Because of the complexity of this project this will take time to work out a solution.

Hi,

We have tested your application here, and couldn't see an issue, we tested this here on 11.2 update 2. Please provide information on how to properly reproduce the issue.

I am using 11.2 update 2 with FMX UI pack 3.7.8.9 did you use the same control versions from TMS?

We have tested this here with 3.7.9.0 which is the latest version we released quite some time ago.

Pieter

I downloaded latest version of FMX UI Pack, but error continues.

On the image above after the gyroscope turns and I am in "detail" mode automatically returns to the ancestor row and the detail arrow loose it.

Lets solve this by steps, how to avoid the loose of detail arrows?

I recorded again a small video, please take a look at the end because I marked in a red circle what I am trying to avoid.

https://timbralofacil.com/descargas/errortms2.mp4

Pieter

The bug is on the gyroscope event, on Android when I turn the device the tableview still on detail mode, but not on iOS it close the detail mode and remove the right detail arrow on the selected item.

I saw your video above but on my iPhone 14 pro it does not the same behavior, wich part of your source code manage the gyroscope so I can take a look.

Thanks

Hi,

We don't actually use any gyroscope related APIs, basically all we do is intercept resize events and rebuild some parts of the tableview.

Pieter

2023 will end soon and I don't want this error from my side continues, because my support for this deprecated suite will end in about 30 days.

Will you work all December?

I provided you with a DEMO and continues the error on my iPhone 14 PRO, as a last resource what do you recommend me to review on UI pack?

What else I can do in order to solve this issue?

Thanks

We'll look into this issue again as soon as possible.