I have tried every step provided in the board that I can find, but my app will not display full-width.
I cannot get the app to resize to fit my screen.
I thought it might be something buggy in components, but even when I built the new app without them, it didn't autofit.
Is there anything else that might make this work?
Also, is there a way to set Preview to full-screen?
Solved! Go to Solution.
I'm coming back with the extremely simple solution, with thanks to MS Support. All I had to do was add a single rectangle the size of the full screen (1366 wide) to each screen. I positioned it in the back, no color, then reset the screen size + orientation settings to Scale to Fit On and Lock Aspect Ratio off. The app autofit all of my screens, regardless of size!
I had seen the rectangle on the screens of the Customer Success app and assumed incorrectly it was a visual design element. Instead, it was a responsive design trick.
Here's the note from MS support, in case it helps anyone else:
- We have been able to reproduce this issue too.
- We did a bit of reverse engineering on the customer success app and found that the width of the rectangle was 1366px and we adopted this on our test app and it stopped overflowing.
- Follow the below steps and please let us know how things go:
o Create a rectangle by going to ‘insert’ then ‘icons’ and scroll down to ‘rectangles’
o Adjust the width of the rectangle to 1366px and adjust the color to the background color of your app.
o Assuming your app is landscape, set the Screen Size + Orientation settings
- 16:9 (Default)
- Scale to Fit On
- Lock Aspect Ratio to off
- Lock Orientation to on.
First, if you haven't read the article on Power Apps Responsive design here it is.
Otherwise, the one thing that I do differently is that after turning off scale to fit I always use Custom for the screen size. Using 16:9 means that it will try to impose that aspect ratio on the screen no matter what the width setting is. With Custom it gives you the freedom to change both at runtime. Just type in numbers that make sense on your current monitor while designing and then set them in the app programmatically. That will override your custom settings.
I see, thanks - that may be why it worked with Custom set to 1920x1080.
I don't understand specifically how to do the latter half of this:
Just type in numbers that make sense on your current monitor while designing and then set them in the app programmatically. That will override your custom settings.
When I first reviewed the responsive settings, it was an enormous task to manually set every control in the frame. But when I launch sample apps, they have 16:9 set as default size and all of the controls are fixed dimensions, but they immediately resize in my screen.
How does one set autofit screen in the app programmatically? Is there some way other than manually setting every control on every screen to relative size and width? And do you understand why the sample templates work with autofit?
A couple of points. If you are on a 16:9 screen then having autoresize turned on will autoresize for you screen. But that's not responsive since if you are on a 4:3 screen it will autoresize to make sure that a 4:3 resolution will fit on your screen. That will leave space at either the sides or the top. To do full responsive so the app will adapt to whatever screen size you are in you do have to set the dimensions of the Screen and container objects manually in the code. Everything else is set relative to them by using Parent.something or recognizing that the X and Y are relative to the parent. There is no magic fix for that. Autoresize is easy and will give good results, but it won't be perfect on all screens. Using a fixed resolution or screen fit ratio won't fill the whole screen on every screen.
If it's useful for anyone trying to troubleshoot, here are design settings from a sample template:
I am trying to understand this because my published view dimensions keep changing. Sometimes it is centered with margins, right now it is flushed left, etc. So I suspect there is a div or some other design issue that needs to be addressed. This happens frequently in Oxygen Builder, which I use for WP design, and carefully working through Inspect Element usually identifies the culprit. Inspect Element tweaks haven't corrected screens yet.
Thank you for any insights anyone can share about why this works for the template.
Its the ratio of the Pixel height vs. width that matters, not that its a 27" monitor. If the ratio is 4:3 (width vs height) then that setting will fill the screen, assuming scale to fit is turned on. If the ratio is 16:9 then that setting will fill the screen. But if the screen is set to one of those with scale to fit and the ratio of the monitor doesn't match the setting then you will get white space. That's where responsive comes in. If you turn off the ratios and scaling settings then you can set the position and size of all the controls on the screen using formulas.
For the templates, I suspect your 27" monitor matches the pixel ratio that was used in the template. So it works.
We are not discussing the same issue.
I am not confused by how responsive design works, which is what you are trying to assist with. I understand responsive design principles and screen ratios.
Instead, I am confused by the discrepancy between the behavior of two identical apps. As I mentioned, the app that is not resizing is identical in settings to the app that is resizing. That is what I am solving for.
Further, at some point in editing, the non-resizing app further breaks the container and flushes fully left. In other template-driven software, such breaks frequently are caused by a setting in a single div (or here, control).
If anyone has experienced this and has read the content of my posts, any insights would be great. Thanks.
If anyone has
Resizing aside for the moment, one of the things that breaks placement is renaming screens. If you create a screen exactly the way you want it to look, duplicate it, and then rename the duplicate a lot of the controls will re-align. This has been reported and is a known issue.
In terms of two different apps not following the same rule set, I would have to see the two apps to track down why they behave differently. But there is some setting that is different. There are a lot of things other than X, Y, Width, and Height that will affect the screen. That's why I usually go to the trouble of doing some level of responsive design.
Check out new user group experience and if you are a leader please create your group
Check out how to claim yours today!
Test your skills now with the Cloud Skill Challenge.