Hi,
In my app I am detecting if the user is using a phone or a tablet and then showing a different layout based on what device they are using.
I am detecting the screen size and showing the layout like the following:
This has been working for some time, but now I have a customer using an OnePlus 7T phone.
The issue is its rotating to landscape due to the code as above, and it should be using the phone layout.
I think it's because the phone they are using is an 6.55" screen and I am telling my app if it's a 6" plus screen to rotate.
Is there a better way in detecting if the user is using a large screen like a tablet or a small screen like a phone other than the code I am using above ?
I guess the only way is to increase the screen size in my code like the following?
In my app I am detecting if the user is using a phone or a tablet and then showing a different layout based on what device they are using.
I am detecting the screen size and showing the layout like the following:
B4X:
If GetDeviceLayoutValues.ApproximateScreenSize > 6 Then
phone1.SetScreenOrientation(0)
Activity.LoadLayout("landscape")
Log("** tablet **")
Else
phone1.SetScreenOrientation(1)
Activity.LoadLayout("portrait")
Log("** phone **")
End If
This has been working for some time, but now I have a customer using an OnePlus 7T phone.
The issue is its rotating to landscape due to the code as above, and it should be using the phone layout.
I think it's because the phone they are using is an 6.55" screen and I am telling my app if it's a 6" plus screen to rotate.
Is there a better way in detecting if the user is using a large screen like a tablet or a small screen like a phone other than the code I am using above ?
I guess the only way is to increase the screen size in my code like the following?
B4X:
If GetDeviceLayoutValues.ApproximateScreenSize >= 7 Then
phone1.SetScreenOrientation(0)
Activity.LoadLayout("landscape")
Log("** tablet **")
Else
phone1.SetScreenOrientation(1)
Activity.LoadLayout("portrait")
Log("** phone **")
End If