安全区域
通过expandSafeArea属性支持组件扩展其安全区域。
说明:
开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
属性
| 名称 | 参数 | 参数描述 |
|---|---|---|
| expandSafeArea | type?: Array <[SafeAreaType]>, edges?: Array <[SafeAreaEdge]> | 控制组件扩展其安全区域。 默认值: type: [SafeAreaType.SYSTEM, SafeAreaType.CUTOUT, SafeAreaType.KEYBOARD], edges: [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM, SafeAreaEdge.START, SafeAreaEdge.END] 扩展至所有非安全区域。 type: 非必填,配置扩展安全区域的类型。 edges: 非必填,配置扩展安全区域的方向。 |
示例
示例1
// xxx.ets
@Entry
@Component
struct SafeAreaExample1 {
@State text: string = ''
controller: TextInputController = new TextInputController()
build() {
Row() {
Column()
.height('100%').width('100%')
.backgroundImage($r('app.media.bg')).backgroundImageSize(ImageSize.Cover)
.expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM])
}.height('100%')
}
}

示例2

@Entry
@Component
struct SafeAreaExample {
@State text: string = ''
controller: TextInputController = new TextInputController()
build() {
Row() {
Stack() {
Column()
.height('100%').width('100%')
.backgroundImage($r('app.media.bg')).backgroundImageSize(ImageSize.Cover)
.expandSafeArea([SafeAreaType.KEYBOARD, SafeAreaType.SYSTEM])
Column() {
Button('Set caretPosition 1')
.onClick(() = > {
this.controller.caretPosition(1)
})
TextInput({ text: this.text, placeholder: 'input your word...', controller: this.controller })
.placeholderFont({ size: 14, weight: 400 })
.width(320).height(40).offset({y: 120})
.fontSize(14).fontColor(Color.Black)
.backgroundColor(Color.White)
}.width('100%').alignItems(HorizontalAlign.Center)
}
}.height('100%')
}
}

审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
组件
+关注
关注
1文章
614浏览量
19087 -
鸿蒙
+关注
关注
60文章
3068浏览量
46270
发布评论请先 登录
相关推荐
热点推荐
开源鸿蒙开发者的跨界成长之路
在开源鸿蒙的开发者里,有一群“跨界先锋”,他们带着不同行业的积淀,在这片创新土壤上书写着独特的技术故事。张宇昕,浙江众合科技的鸿蒙系统服务开发
开源鸿蒙技术大会2025丨跨平台开发框架分论坛:共拓移动开发新边界,共创跨平台生态新时代
随着开源鸿蒙生态的持续壮大,开发者迎来了除Android与iOS之外的“第三种选择”。为解决“加入一个新生态就会增加一倍投入”的行业痛点,让开发者的代码能够在更多平台上复用,开源
开源鸿蒙技术大会2025丨开源鸿蒙应用开发再提速,跨平台框架PMC(筹)正式启动孵化
9月27日,开源鸿蒙技术大会2025在长沙国际会议中心盛大举办。大会现场,开源鸿蒙跨平台框架PMC(筹)正式启动孵化,标志着开源鸿蒙在应用
无法将 XOM 设置为非安全区域,为什么?
在 M2351 中,我将非安全边界设置为0x40000。
非安全区域应为 0x10040000 ~ 0x1007ffff。
然后,我将 XOM 设置为 0x10060000,但它失败了。
非安全区域不
发表于 08-27 07:01
【 HarmonyOS 5 入门系列 】鸿蒙HarmonyOS示例项目讲解
【 HarmonyOS 5 入门系列 】鸿蒙HarmonyOS示例项目讲解 ##鸿蒙开发能力 ##HarmonyOS SDK应用服务##鸿蒙金融类应用 (金融理财# 一、前言:移动
【HarmonyOS next】ArkUI-X休闲娱乐搞笑日历【基础】
=${new Date().getTime()}`);
总结
通过ArkUI-X的跨平台自适应能力,我们实现了:
网络图片在鸿蒙和iOS设备的高质量渲染
设备差异的自动适配(屏幕比例/安
发表于 06-28 22:07
ArkUI-X跨平台技术落地-华为运动健康(一)
开”的加载速度,所以目前H5跨平台技术只在运动健康应用某些低频和容易变化的页面上使用,在一二级页面仍使用原生native开发。
跨平台方案选
发表于 06-18 22:53
ArkUI-X跨平台应用改造指南
ArkUI-X跨平台应用改造指南
现状与诉求
随着 HarmonyOS Next 5.0 版本正式发布,众多开发者基于 ArkTS 语言为 HarmonyOS Next 系统
发表于 06-16 23:05
鸿蒙5开发宝藏案例分享---跨线程性能优化指南
;>Worker</span>做多线程开发时,总遇到对象跨线程卡顿的问题,原来鸿蒙早就提供了解决方案。下面结合代码和实战案例,带你彻底玩转性能优化!
一、痛点:跨线程
发表于 06-12 17:13
鸿蒙5开发宝藏案例分享---应用并发设计
?** 鸿蒙并发编程实战指南:解锁ArkTS多线程黑科技**
嘿,开发者朋友们! 今天给大家扒一扒鸿蒙官方文档里藏着的并发编程宝藏—— 100+实战场景解决方案 !从金融理财到游戏
发表于 06-12 16:19
使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件
的一站式集成开发环境(IDE),专为鸿蒙操作系统(HarmonyOS Next)应用和服务开发设计 DevEco Studio,掌握基本操作和开发
发表于 06-11 17:18
Kuikly鸿蒙版正式开源 —— 揭秘卓越性能适配之旅
Android、iOS开源基础上,本次开源鸿蒙平台支持和Compose DSL支持,进一步提升业务多端适配和鸿蒙
发表于 06-04 16:46
鸿蒙ArkTS声明式开发:跨平台支持列表【安全区域】
评论