详细问题描述
在iOS端,从横屏的页面跳转到一个竖屏的页面(190909补充:或者从横屏的页面返回上一级竖屏的页面、再跳转到一个竖屏的页面时),第一次打开这个竖屏页面的时候还是按照横屏的宽度来计算字号,字号明显过大。单位用的是upx。已经在相关页面的各种页面生命周期里都写好了横屏或竖屏的代码
其实就是横竖屏切换时,upx单位对应的根元素字号动态设置有问题
IDE运行环境说明
[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明] HBuilderX
[IDE版本号] 2.2.2
[windows版本号] win7
uni-app运行环境说明
[运行端是h5或app或某个小程序?] APP(190909补充:iOS为主,安卓也会出现,H5可手动复现)
[运行端版本号] 最新的
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试] HBuilderX
[编译模式是老模板模式还是新的自定义组件模式?] 自定义组件模式
App运行环境说明
[iOS版本号] 12.2
[手机型号] iPhone 7
4 个回复
r***@qq.com (作者)
补充了新测试出来的场景,希望能尽快得到解决方法
下一页丶翻
用rem
r***@qq.com (作者)
rem和rpx是差不多的原理吧?
2019-09-11 17:25
DCloud_heavensoft
回复 r***@qq.com: 原理不一样。rem是浏览器内生支持的,rpx是编译时计算的
2019-09-16 22:10
1***@qq.com
等官方解决这个bug,应该是upx适配的问题,一直关注这个问题好久了呢。横竖屏来回切换,跳转,就会有概率出现这种问题,可不能把所有的upx都改成px吧,纠结~~~~
爱吃鱼的靖哥哥 - 行走在全栈路上的码农
我也遇到这个问题了,我用的都是rpx,官方不是推荐使用的rpx吗,不能把所有的都改掉把,这要疯了啊。现在有没有什么好的解决方案啊
DCloud_heavensoft
这是官网文档:“rpx不支持动态横竖屏切换计算,使用rpx建议锁定屏幕方向”
2020-04-24 09:00
爱吃鱼的靖哥哥
回复 DCloud_heavensoft: 好吧,那岂不是用到横竖屏切换的从一开始所有页面就得使用rem进行开发,没有rpx用的爽啊,作为一名程序员我很想知道这个rpx横竖屏切换时动态计算的难度到底在哪
2020-04-25 09:35
DCloud_heavensoft
回复 爱吃鱼的靖哥哥: rpx是编译时计算的,不是根据旋转时动态计算的
2020-04-25 15:10
爱吃鱼的靖哥哥
回复 DCloud_heavensoft: 既然是编译计算的,那我的理解是不是就是跟px的转换存在一个固定比例并在app内保持不变了,那为啥横竖屏切换后样式会变化呢,是什么原因导致变化的呢
2020-04-25 16:04
DCloud_heavensoft
回复 爱吃鱼的靖哥哥: 比如竖屏启动时,已经根据竖屏的屏幕宽度计算了每个rpx的真实px,你再横屏后,不会根据新的屏宽重新算新的px
2020-04-25 18:42
爱吃鱼的靖哥哥
回复 DCloud_heavensoft: 是这个道理没错啊,关键现在的问题是rpx竖屏页面--》px横屏页面--》rpx竖屏页面--》rpx任意页面,此时页面变大--》返回再进入恢复正常。目前我的问题是这样的,第四步才会出现,不知道官方有没有遇到这种情况,不行的话我可以提供代码
2020-04-26 15:32
爱吃鱼的靖哥哥
回复 DCloud_heavensoft: app是以竖屏方式启动的
2020-04-26 15:35
DCloud_heavensoft
回复 爱吃鱼的靖哥哥: 第四步任意页面是什么意思,不管第几步,竖屏的rpx应是一致的表现。如果不是,那可以贴代码
2020-04-28 07:38
爱吃鱼的靖哥哥
回复 DCloud_heavensoft: 就是rpx的横屏或者竖屏页面,就是第四步进去的页面就会变大,我去开个新帖把代码贴出来把
2020-04-28 09:10
爱吃鱼的靖哥哥
回复 DCloud_heavensoft: https://ask.dcloud.net.cn/question/95288
2020-04-28 14:13