J John Leeson Member Licensed User Longtime User Sep 12, 2026 #1 Hi, Probably very obvious but in my B4XPages app, after downloading B4A 14 and updating to target 36, all the layouts are now underneath the action bar (not the status bar), so text / buttons etc are hidden. I've only been able to find posts about the colour of the action bar - from what I can see, the layout should just have worked in B4X pages?
Hi, Probably very obvious but in my B4XPages app, after downloading B4A 14 and updating to target 36, all the layouts are now underneath the action bar (not the status bar), so text / buttons etc are hidden. I've only been able to find posts about the colour of the action bar - from what I can see, the layout should just have worked in B4X pages?
B Brian Dean Well-Known Member Licensed User Longtime User Sep 12, 2026 #2 What you are seeing is the enforced edge-to-edge layout scheme introduced by Google with sdk 36. Erel explains this in this post where he also shows one way to deal with the change. Upvote 0
What you are seeing is the enforced edge-to-edge layout scheme introduced by Google with sdk 36. Erel explains this in this post where he also shows one way to deal with the change.
J John Leeson Member Licensed User Longtime User Sep 12, 2026 #3 Thank you for your reply. I read that page, all my views are on a panel. The way to deal with this change is to add a "root" panel that is positioned in the content area and add any layout that shouldn't be covered by the non-app elements to this panel. Click to expand... And it specifically say that in B4XPages, no changes are required: Apologies if I'm misreading it, I assume I must be, but it's not clear to me how to fix it In B4XPages, each page is made of a panel and this panel is resized based on the content area, so no changes are needed. Click to expand... Upvote 0
Thank you for your reply. I read that page, all my views are on a panel. The way to deal with this change is to add a "root" panel that is positioned in the content area and add any layout that shouldn't be covered by the non-app elements to this panel. Click to expand... And it specifically say that in B4XPages, no changes are required: Apologies if I'm misreading it, I assume I must be, but it's not clear to me how to fix it In B4XPages, each page is made of a panel and this panel is resized based on the content area, so no changes are needed. Click to expand...
B Brian Dean Well-Known Member Licensed User Longtime User Sep 12, 2026 #4 And it specifically say that in B4XPages, no changes are required Click to expand... Yes - you are right. But it is hard to imagine that the problem you describe is not connected with edge-to-edge in some way. Unfortunately I very rarely use B4XPages so have no experience to offer. I can only suggest that you examine your code carefully for anything unorthodox. Does your app also extend beneath the navigation bar at the bottom of the screen? Upvote 0
And it specifically say that in B4XPages, no changes are required Click to expand... Yes - you are right. But it is hard to imagine that the problem you describe is not connected with edge-to-edge in some way. Unfortunately I very rarely use B4XPages so have no experience to offer. I can only suggest that you examine your code carefully for anything unorthodox. Does your app also extend beneath the navigation bar at the bottom of the screen?
Alessandro71 Well-Known Member Licensed User Longtime User Sep 12, 2026 #5 What android release is running on your test phone? Upvote 0
J John Leeson Member Licensed User Longtime User Sep 12, 2026 #6 on the physical device I have here, android 14, I have a client using a brand new device (not sure he actual version). if I set #EdgeToEdgeOldDevices: True on my device, we see the same issue. "Does your app also extend beneath the navigation bar at the bottom of the screen?" - no. Upvote 0
on the physical device I have here, android 14, I have a client using a brand new device (not sure he actual version). if I set #EdgeToEdgeOldDevices: True on my device, we see the same issue. "Does your app also extend beneath the navigation bar at the bottom of the screen?" - no.
teddybear Well-Known Member Licensed User Sep 12, 2026 #7 Try creating a new project to see if the result is different. Last edited: Sep 12, 2026 Upvote 0
B Brian Dean Well-Known Member Licensed User Longtime User Sep 12, 2026 #8 If I set #EdgeToEdgeOldDevices: True on my device, we see the same issue. Click to expand... Doesn't this confirm that there is something wrong with your page setup? Perhaps you should show your B4X_PageCreated sub at least. It does sound like you are adding a view outside of the B4X-Page root. Upvote 0
If I set #EdgeToEdgeOldDevices: True on my device, we see the same issue. Click to expand... Doesn't this confirm that there is something wrong with your page setup? Perhaps you should show your B4X_PageCreated sub at least. It does sound like you are adding a view outside of the B4X-Page root.
Erel B4X founder Staff member Licensed User Longtime User Sep 13, 2026 #9 Please try to reproduce it in a small project and upload it. Upvote 0
J John Leeson Member Licensed User Longtime User Sep 13, 2026 #10 Good morning. I partly solved it (fullscreen = false ), but.. I have tried the example here and the action bar is 'double height' (or, is it stacking 2 action bars)? I have made no changes to the example, but I see the same in my app, see attached images, so the example in the link, is an example project Attachments 1789288907672.png 6.3 KB · Views: 104 1789288944949.png 3.2 KB · Views: 105 Upvote 0
Good morning. I partly solved it (fullscreen = false ), but.. I have tried the example here and the action bar is 'double height' (or, is it stacking 2 action bars)? I have made no changes to the example, but I see the same in my app, see attached images, so the example in the link, is an example project
Cableguy Expert Licensed User Longtime User Sep 13, 2026 #11 Is it possible that you are seeing the OS statusbar + the B4XPages actionBar? Upvote 0
teddybear Well-Known Member Licensed User Sep 13, 2026 #12 John Leeson said: I have tried the example here and the action bar is 'double height' (or, is it stacking 2 action bars)? I have made no changes to the example, but I see the same in my app, see attached images, so the example in the link, is an example project Click to expand... Did you try this? Upvote 0
John Leeson said: I have tried the example here and the action bar is 'double height' (or, is it stacking 2 action bars)? I have made no changes to the example, but I see the same in my app, see attached images, so the example in the link, is an example project Click to expand... Did you try this?
J John Leeson Member Licensed User Longtime User Sep 14, 2026 #13 It's the same - there is a bar beneath the title bar: Upvote 0
J John Leeson Member Licensed User Longtime User Sep 14, 2026 #14 I have managed to test it on a new device and it's OK, so it seems like it's related to the fact I'm on an older device (Galaxy A53, android 14) Upvote 0
I have managed to test it on a new device and it's OK, so it seems like it's related to the fact I'm on an older device (Galaxy A53, android 14)
Alessandro71 Well-Known Member Licensed User Longtime User Sep 14, 2026 #15 https://appetize.io/ lets you test your app on several devices with different Android versions: you might take a look to check if it's specific to one model/version Upvote 0
https://appetize.io/ lets you test your app on several devices with different Android versions: you might take a look to check if it's specific to one model/version
teddybear Well-Known Member Licensed User Sep 14, 2026 #16 John Leeson said: It's the same - there is a bar beneath the title bar: View attachment 173598 Click to expand... Try adding #IncludeTitle: False? Upvote 0
John Leeson said: It's the same - there is a bar beneath the title bar: View attachment 173598 Click to expand... Try adding #IncludeTitle: False?
J John Leeson Member Licensed User Longtime User Sep 14, 2026 #17 teddybear said: Try adding #IncludeTitle: False? Click to expand... then the title bar and the extra bar both diappear (status bar still visible). Essentially, the behaviour is what you would expect, but there's an extra bar. I've also tried your example on an older android device (android 11) at that is exactly the same. Upvote 0
teddybear said: Try adding #IncludeTitle: False? Click to expand... then the title bar and the extra bar both diappear (status bar still visible). Essentially, the behaviour is what you would expect, but there's an extra bar. I've also tried your example on an older android device (android 11) at that is exactly the same.
Cableguy Expert Licensed User Longtime User Sep 14, 2026 #18 As "edge2edge" is a new thing, you could test for the OS version and change both target sdk in manifest and layout... I recall seeing such snippet around the forum Upvote 0
As "edge2edge" is a new thing, you could test for the OS version and change both target sdk in manifest and layout... I recall seeing such snippet around the forum
Cliff McKibbin Member Licensed User Longtime User Sep 21, 2026 #19 You might want to make sure you are not positioning the panel using 'root.top' in any way. I had been positioning my top fields using root.top+10 and the effect was to push the top fields down about the same as your panel appears to be pushed down. I eliminated those commands for the top field and now rely on the position it is in as defined on the layout screen. Code: Copy ' position the views ' lbCat.Top=Root.Top lbCat.Left=Root.Left+10 imvVoice.Top=lbCat.Top imvVoice.Left=Root.Width-imvVoice.Width-10 lbEId.Top=lbCat.Top lbEId.Left=imvVoice.Left-lbEId.Width-10 You may be doing something like: panel1.top=root.top+ label1.height+10. This would definitely push the panel down to where it is shown. For the automatic edge handling to work correctly, you can't use root.top at all. Good luck, Cliff Upvote 0
You might want to make sure you are not positioning the panel using 'root.top' in any way. I had been positioning my top fields using root.top+10 and the effect was to push the top fields down about the same as your panel appears to be pushed down. I eliminated those commands for the top field and now rely on the position it is in as defined on the layout screen. Code: Copy ' position the views ' lbCat.Top=Root.Top lbCat.Left=Root.Left+10 imvVoice.Top=lbCat.Top imvVoice.Left=Root.Width-imvVoice.Width-10 lbEId.Top=lbCat.Top lbEId.Left=imvVoice.Left-lbEId.Width-10 You may be doing something like: panel1.top=root.top+ label1.height+10. This would definitely push the panel down to where it is shown. For the automatic edge handling to work correctly, you can't use root.top at all. Good luck, Cliff