uni-app横屏跳转app导致全局字体都变大
uni-app横屏跳转app导致全局字体都变大
我从横屏的状态跳转uniapp开发的app,导致全局的字体都变大,竖屏进入是正常,日志打印当前app的状态也是竖屏,好像是rpx造成的,请问有大佬知道如何解决吗
更多关于uni-app横屏跳转app导致全局字体都变大的实战教程也可以访问 https://www.itying.com/category-93-b0.html
导致这个问题,是横屏竖屏后的第一个界面样式会乱,
我是这么解决的,
创建一个空白的界面,
然后在横屏想变竖屏前,关闭此界面跳转到空白界面,
onBackPress(e) {
console.log(‘onBackPress---------》’, e);
// 跳转至空白页
uni.redirectTo({
url:’/pages/common/white/white’
})
// 阻止界面返回默认操作, 这一步主要是为了防止界面出现异常,uniapp有对onBackPress的详细讲解
return true;
},
在空白界面增加下面代码
onReady() {
uni.navigateBack()
},
更多关于uni-app横屏跳转app导致全局字体都变大的实战教程也可以访问 https://www.itying.com/category-93-b0.html
我这个是从浏览器跳转app,启动页就有这个问题,也可以这样添加吗?
厉害,确实管用!!!!多谢!!
根据楼上的解决方案,完整代码:
这是blank页面的代码:
<template>
<view>
</view>
</template>
然后在横屏页面中(即将返回竖屏页面)这样调用:
uni.redirectTo({
url: ‘/pages/blank/blank/blank’
});
这个其实应该官方弄的啊,是没监听到横屏转竖屏吗?没有重新设置根字体大小吧
这种问题小程序也是有的,我这边最终是页面样式重构了rpx全部换成vmin了,小程序不像app这种跳转在回来就正常,小程序是只要是横屏百分百样式变大
在uni-app开发中,遇到横屏跳转导致全局字体变大的问题,通常是因为横屏和竖屏的适配没有处理好。这可能是因为CSS的媒体查询(media queries)或者页面的布局样式在横屏模式下没有正确设置。以下是一些可能帮助解决问题的代码示例和思路。
1. 使用媒体查询确保横屏和竖屏样式一致
首先,确保在CSS中使用了媒体查询来定义横屏和竖屏的样式。这可以确保在不同屏幕方向下,字体大小和其他样式保持一致。
/* 竖屏样式 */
@media screen and (orientation: portrait) {
body {
font-size: 16px; /* 或者其他你希望的字体大小 */
}
}
/* 横屏样式 */
@media screen and (orientation: landscape) {
body {
font-size: 16px; /* 确保横屏时字体大小与竖屏一致 */
}
}
2. 检查页面的布局样式
如果全局字体变大,可能是因为页面的宽度或高度变化导致布局错乱。确保页面的布局样式在不同屏幕方向下都能正确适应。
/* 示例:确保容器宽度和高度在不同方向下都能正确显示 */
.container {
width: 100vw;
height: 100vh;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
}
3. 在JavaScript中监听屏幕方向变化
可以通过JavaScript监听屏幕方向的变化,并动态调整字体大小或其他样式。
// 监听屏幕方向变化
window.addEventListener('resize', function() {
if (window.innerWidth > window.innerHeight) {
// 横屏模式
document.body.style.fontSize = '16px'; // 设置横屏时的字体大小
} else {
// 竖屏模式
document.body.style.fontSize = '16px'; // 确保竖屏时字体大小与横屏一致
}
});
// 初始化时设置字体大小
window.dispatchEvent(new Event('resize'));
4. 检查uni-app的配置
确保uni-app的manifest.json
中配置了正确的屏幕方向支持。
"app-plus": {
"distribute": {
"apple": {
"supports": [
"orientation-portrait",
"orientation-landscape"
]
}
}
}
以上代码示例和思路应该能帮助你解决uni-app横屏跳转导致全局字体变大的问题。如果问题仍然存在,建议进一步检查页面的具体样式和布局,或者考虑是否有其他CSS或JavaScript代码影响了字体大小。