uniapp 打包成APP或小程序后或H5后 IOS(iphoneX机型) 底部安全区域适配(避开底部黑条虚拟键)

这篇具有很好参考价值的文章主要介绍了uniapp 打包成APP或小程序后或H5后 IOS(iphoneX机型) 底部安全区域适配(避开底部黑条虚拟键)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、IOS 安全区域适配( 配置方法 )


在 manifest.json 文件的 "app-plus" 节点下添加 "safearea" 适配 iOS 的安全区域,

"background" 对应正常模式下安全区域外的背景颜色,

"backgroundDark"对应暗黑模式(夜间模式 / 深色模式)下安全区域外的背景颜色

"app-plus" : {
	"safearea": { //iOS平台的安全区域
		"background": "#ffffff",//正常模式下安全区域外的背景颜色
		"backgroundDark": "#2f0508", //应暗黑模式下安全区域外的背景颜色 HX 3.1.19+支持
		"bottom": {
			"offset": "auto"//开启原生安全区域占位
		}
	}
}

二、IOS 安全区域适配( CSS方法适配)


APP端不使用配置,非APP端可不配置

"app-plus" : {
	"safearea": { //iOS平台的安全区域
		"bottom": {
			"offset": "none"//关闭原生安全区域占位
		}
	}
}

 然后使用CSS常量  constant(safe-area-inset-bottom) env(safe-area-inset-bottom) 来适配,如下在需要适配的页面元素中使用,将下面CSS放入公共样式中,通过类名快速调用

比如为列表底部添加内边距避开安全区,在 iPhoneX 上列表底部会有内边距,在其他设备上没有内边距:

/* iPhoneX底部安全区定义*/
.safe-area-inset-bottom {
  padding-bottom: 0;  
  padding-bottom: constant(safe-area-inset-bottom);  
  padding-bottom: env(safe-area-inset-bottom);  
} 

也可以用于高度(height),间距(margin)示例如下: 

/* 设置padding-bottom*/
padding-bottom: constant(safe-area-inset-bottom); //兼容 IOS<11.2
padding-bottom: env(safe-area-inset-bottom); //兼容 IOS>11.2

/* 设置高度*/
height: calc(100px + constant(safe-area-inset-bottom));
height: calc(100px + env(safe-area-inset-bottom));

/* 设置margin-bottom*/
margin-bottom: constant(safe-area-inset-bottom);
margin-bottom: env(safe-area-inset-bottom);

constant()函数是WebKit的CSS函数,用于在小程序中设置底部安全距离。而env()函数是CSS的通用函数,可以在任何支持的环境中使用

注意:文章来源地址https://www.toymoban.com/news/detail-835313.html

  • 当网页设置viewport-fit=cover的时候才生效(uniapp开发,小程序无需设置,默认viewport-fit=cover
  • constant()env()需要同时存在,顺序不能换。
  • nvue 页面不支持 css 常量,可以使用 uni.getSystemInfo 获取 safeAreaInsets 动态设置到 元素的style 属性中。
  • 使用pages.json里配置的原生tabbar的tabbar页面,无需处理,原生tabbar会自动适配。

到了这里,关于uniapp 打包成APP或小程序后或H5后 IOS(iphoneX机型) 底部安全区域适配(避开底部黑条虚拟键)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp的打包:h5、微信小程序以及APP方式

    本人用的是HBuilder编译器,学习uniapp时b站某位大大推荐的,我刚开始接触代码时候也用过,那时候并不好用这个编译器,但是现在试了一下挺好用的。 这是h5页面的打包配置,新版本的HBuilder用的是web配置(也就是h5配置的意思) 由于上图是我个人项目练习,没有用到appID,所

    2024年02月09日
    浏览(66)
  • uniapp条件编译区分ios、android、小程序、h5、app等

    条件编译 条件编译是用特殊的注释作为标记,在编译时根据这些特殊的注释,将注释里面的代码编译到不同平台。 **写法:**以 #ifdef 或 #ifndef 加 %PLATFORM% 开头,以 #endif 结尾。 示例代码: 注意 Android 和 iOS 平台不支持通过条件编译来区分,如果需要区分 Android、iOS 平台,请

    2024年02月09日
    浏览(44)
  • uniapp 发送全文件 支持App端ios、android,微信小程序,H5

    由于uniapp提供的API在app端只能上传图片和视频,不能上传其他文件,说以只能借助插件了。  ios端用的这个插件 获取到文件对象 免费的 ios-uniapp 文件选取word,pdf,xls等文件 - DCloud 插件市场 uniapp iOS文件选取 iOS选取text,pdf,word,doc,xls,ppt https://ext.dcloud.net.cn/plugin?id=1311 这个是返回一

    2024年02月16日
    浏览(60)
  • 基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)

    除了使用HBuilderX工具可视化搭建项目外,DCloud官方还提供了一个脚手架用于命令行搭建项目。 uni-app项目支持 uni cli和 HBuilderX cli两种脚手架工具: uni cli:面向非HBuilderX的用户(如习惯使用vscode/webstorm的开发者),提供创建项目、编译发行等能力;在App平台,仅支持生成离线

    2024年04月16日
    浏览(76)
  • Shopro商城 高级版 Fastadmin和Uniapp进行开发的多平台商城(微信公众号、微信小程序、H5网页、Android-App、IOS-App)

    Shopro商城无加密的开源源码( 可用于自营+外包项目(多主体) 、 可用于外包定制开发项目 ) shopro 商城,一款基于 uni-app 的前端模板商城。目前适配了(小程序+app+h5+公众号)。 主要功能:登录、注册、签到、富文本、分类、购物车、筛选、地址、商品评论、积分商城、拼团、

    2023年04月09日
    浏览(68)
  • uniapp ios app离线打包

    进行UniApp 离线打包之前, 建议先认真阅读一遍官方的开发文档。真正阅读过了,可以少踩很多坑。本文介绍离线打包前的准备及iOS工程的一些配置和需要注意的事项。 官方文档: App离线打包 iOS插件开发教程 iOS原生工程配置 首先,需要去UniApp官网创建一个开发者账号 注册

    2023年04月18日
    浏览(52)
  • Uniapp App离线打包流程(Android、IOS待续)

    开发环境: Visual Studio Code 版本:1.84.2 (非必需,可跳过) HBuilder X 版本:3.96 Android Studio 版本: 2022.1.1 JDK 版本:11.0.1 Android SDK. 版本:34.0.0 官网打包流程:https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android.html) 温馨提示:网盘下载如龟速,如需要SDK可以加V benjamin19950304 由于uniapp 3

    2024年04月15日
    浏览(48)
  • iOS APP h5快捷程序 .mobileconfig的生成

    从APP Store 下载Apple Configurator软件 从一个管理点管理所有iOS设备应用程序,文档和配置文件。想要确保您的所有家庭成员在其每台iOS设备上都有类似的应用和文档,管理日益增长的iOS设备库在我家中变得相当麻烦。尽管针对学校和企业,Apple Configurator是一款免费的macOS工具,可

    2024年02月17日
    浏览(43)
  • uniapp开发WebRTC语音直播间支持app(android+IOS)和H5,并记录了所有踩得坑

    1. 创建自己的语音直播间 2. 查询所有直播间列表 3.加入房间 4.申请上位 5.麦克风控制 6.声音控制 7.赠送礼物(特效 + 批量移动动画) 8.退出房间 1.uniapp 实现客户端H5、安卓、苹果 2.webRTC实现语音直播间(具体原理网上有很多文章我就不讲了,贴个图) 3.使用node.js搭建信令服

    2024年02月19日
    浏览(47)
  • h5项目编写成app,你还不了解吗?直接打包和套webview结合uniapp两种实现方式

    在各种需求中 大致有两类 让h5直接运行成app,有一个成熟的h5项目,想直接打包app 不想触发app更新,又能获取最新的更新效果,使用webview套h5,最终生成app 今天笔者带大家粗略实现以上的两个需求 打开hbuiderx 新建项目 选择 5+app 删除其他的多余文件 将自己打包生成的文件进

    2024年02月04日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包