I designed my app for phone size screens. The problem is that when you run the app on a 13" tablet with high resolution the interface seems really small.
So I thought that an easy fix would be to allow the user to scale up the interface if they so desired. So imagine that I want to make the screen 25% bigger. In that case I do all my calculations for altering the geometry using only 80% of the screen. So if the dimensions of the tablet screen are 1200x1600, then I do all my calculations as if the screen were 960 x 1280. I configure all the controls on the card and position everything as if the screen were 960 x 1280. Then I set the stack width and height to these values and set (or "exactFit" or whatever). But nothing changes. My interface sits in the upper-left corner taking up 80% of the horizontal and vertical space.
The problem is that the stack size has not changed, hence it doesn't scale up - it's already at the sceen size. If I query the stack dimensions immediately after changing them, the stack retains the dimensions of the actual screen, not the dimensions I just assigned it.
Here's the code I am running followed by the log output
setting the "fullscreen" property of the stack to false before I set the dimensions (although the docs say that only works on desktops), but that doesn't change anything either.
Can you not change the stack size once it's running? Or am I completely misunderstanding how scaling works on mobile? I thought I was being so clever!![Cool 8)]()
So I thought that an easy fix would be to allow the user to scale up the interface if they so desired. So imagine that I want to make the screen 25% bigger. In that case I do all my calculations for altering the geometry using only 80% of the screen. So if the dimensions of the tablet screen are 1200x1600, then I do all my calculations as if the screen were 960 x 1280. I configure all the controls on the card and position everything as if the screen were 960 x 1280. Then I set the stack width and height to these values and set
CODE:
fullscreenmode="showAll"
The problem is that the stack size has not changed, hence it doesn't scale up - it's already at the sceen size. If I query the stack dimensions immediately after changing them, the stack retains the dimensions of the actual screen, not the dimensions I just assigned it.
Here's the code I am running followed by the log output
CODE:
local tWidth = 960 local tHeight = 1280log "setting stack dimensions to" && tWidth & comma & tHeightset the width of this stack to tWidthset the height of this stack to tHeightlog "reading stack dimensions at" && the width of this stack & comma & the height of this stack
I've tried setting fullscreenmode to empty or "noScale" before I set the stack dimensions, but that doesn't change anything. I've tried05-07 13:25:46.265 11173 11194 I LiveCode: setting stack dimensions to 960,1280
05-07 13:25:46.266 11173 11194 I LiveCode: reading stack dimensions at 1200,1600
setting the "fullscreen" property of the stack to false before I set the dimensions (although the docs say that only works on desktops), but that doesn't change anything either.
Can you not change the stack size once it's running? Or am I completely misunderstanding how scaling works on mobile? I thought I was being so clever!

Statistics: Posted by bamakojeff — Tue May 07, 2024 7:11 pm