uni-app一键登录苹果手机BUG样式错乱

uni-app一键登录苹果手机BUG样式错乱

开发环境 版本号 项目创建方式
Windows w10 HBuilderX

操作步骤:

之前版本是好好的,这次app升级突然就这个一键登录样式错乱了,自定义按钮全部跑上去了,代码没变过,下面两张图片一张是之前正常的,一张是现在有问题的,只有苹果手机有问题,安卓没问题正常显示

预期结果:

恢复正常页面显示

实际结果:

之前版本是好样的,这次app升级突然就这个一键登录样式错乱了,自定义按钮全部跑上去了,代码没变过,下面两张图片一张是之前正常的,一张是现在有问题的,只有苹果手机有问题,安卓没问题正常显示

bug描述:

之前版本是好样的,这次app升级突然就这个一键登录样式错乱了,自定义按钮全部跑上去了,代码没变过,下面两张图片一张是之前正常的,一张是现在有问题的,只有苹果手机有问题,安卓没问题正常显示


更多关于uni-app一键登录苹果手机BUG样式错乱的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

该bug反馈内容不完整,缺乏关键信息。BUG描述提到"自定义按钮全部跑上去了"但未提供具体样式代码、univerifyStyle配置及问题截图,无法判断是布局错乱还是自定义按钮渲染异常。复现步骤过于笼统,未说明触发条件(如特定运营商/网络环境)、是否使用自定义基座等必要信息。分类信息中缺失uni-app类型(应为传统uni-app而非uni-app-x,因使用Vue2),且未提及manifest.json中OAuth配置细节。
根据知识库分析,iOS平台一键登录需特别注意:iOS必须使用io.dcloud.HBuilder bundleId重签,其他bundleId无法登录(参考链接)。iOS 18新系统可能存在兼容性问题,知识库明确说明一键登录界面由运营商SDK控制,样式定制能力有限(参考链接),仅支持基础样式配置。建议用户检查:1) 是否使用标准基座 2) bundleId是否正确 3) univerifyStyle是否包含非法属性。需补充代码示例和具体样式异常描述才能进一步排查。 内容为 AI 生成,仅供参考

更多关于uni-app一键登录苹果手机BUG样式错乱的实战教程也可以访问 https://www.itying.com/category-93-b0.html


来人啊

快去修复吧,官方人员呢?我回退版本就正常了,hbuilder 4.87版本有问题

这个问题通常是由于iOS系统升级或uni-app基础库更新导致的样式兼容性问题。从图片对比看,一键登录弹窗中的自定义按钮位置异常上移,可能是以下原因:

  1. 安全区域适配问题:iOS新版可能调整了安全区域(Safe Area)的布局逻辑,导致按钮定位计算错误。建议检查页面是否使用了uni.addSafeAreaInsets()或CSS的env(safe-area-inset-bottom)进行底部安全区域适配。

  2. CSS定位方式:检查自定义按钮的CSS定位代码。如果使用了fixedabsolute定位,且依赖的父容器高度计算异常,会导致位置偏移。可以尝试将定位改为flex布局,或使用bottom: 0配合calc()动态计算位置。

  3. uni一键登录组件更新:如果项目中的uni一键登录插件或基础库版本升级,可能存在样式兼容性变化。建议检查HBuilderX中的uni一键登录插件版本,或尝试回退到之前稳定的版本。

  4. iOS系统差异:某些iOS版本(如iOS 16+)对Webview渲染或CSS支持有调整,可能导致样式错乱。可以尝试在iOS真机上使用Safari开发者工具检查元素布局,确认具体是哪个CSS属性异常。

临时解决方案

  • 在App.vue或页面样式中添加全局CSS修复,例如:
    /* 强制重置一键登录容器样式 */
    .uni-onekey-login-dialog {
      display: flex !important;
      flex-direction: column;
      justify-content: flex-end;
    }
    
  • 或使用条件编译针对iOS调整样式:
    /* #ifdef APP-PLUS */
    [@media](/user/media) only screen and (device-family: iPhone) {
      .custom-button {
        bottom: 20px !important; /* 根据实际情况调整 */
      }
    }
    /* #endif */
回到顶部