2024-12-18 17:47:19

页面和自定义组件生命周期

OpenHarmony
369
0
2024-12-18 17:10:17

HarmonyOS ArkTS中视频播放Video组件实现竖屏到横屏切换

在开发HarmonyOS应用时,视频播放是一个常见的需求。ArkTS提供了Video组件来满足这一需求。本文将介绍如何使用ArkTS的Video组件,并实现视频播放时从竖屏切换到横屏的功能。 视频播放组件简介 Video组件是ArkTS中用于播放视频的内置组件,它支持多种功能,包括自动播放、静音、循环播放等。通过Video组件,开发者可以方便地在应用中集成视..

HarmonyOS NEXT
493
0
2024-12-18 17:02:50

OpenHarmony 如何实现防截屏功能

方式一: setWindowPrivacyMode设置窗口是否为隐私模式,设置为隐私模式的窗口,窗口内容将无法被截屏或录屏。此接口可用于禁止截屏/录屏的场景。 import { window } from '@kit.ArkUI'; import { BusinessError } from '@kit.BasicServicesKit'; onWindow..

OpenHarmony
363
0
2024-12-18 16:38:22

HarmonyOS Next应用开发实战:广告的使用介绍及避坑指南

广告的使用,本该是挺简单的。只是首次接触时,有点懵,不知道怎么用。其实记住两点就行了,一个是广告请求,可以看做是给你提供好了API接口,按照规范传参就行了。一个是广告展示,不同类型广告对应的有组件可用。最后,至于布局嘛,则跟其他普通组件类似。记住这些就已经掌握了广告。 本文先对广告服务就行介绍 ,后续对广告接口进行一层封装,便于使用。 避坑指南: 1.模拟器..

HarmonyOS NEXT
410
0
2024-12-18 16:04:08

进程内事件

OpenHarmony
336
0
2024-12-18 16:01:33

如何实现上下切换的页面间跳转动画

可以使用pageTransition函数来实现页面转场效果,通过PageTransitionEnter和PageTransitionExit指定页面进入和退出的动画效果,将其slide属性设置为SlideEffect.Bottom,则页面入场时从下边划入,出场时滑出到下边,即可实现上下切换效果。参考代码如下: // Index.ets @Entry @Co..

OpenHarmony
414
0
2024-12-18 16:00:50

如何锁定设备竖屏,使得窗口不随屏幕旋转

采用窗口的setPreferredOrientation方法可以实现该效果,将orientation参数设置为window.Orientation.PORTRAIT时,可锁定屏幕为竖屏。参考代码如下: import { BusinessError } from '@kit.BasicServicesKit'; import { window } from ..

OpenHarmony
323
0
2024-12-18 16:00:17

如何获取设备屏幕横竖屏状态

方法一:通过媒体查询 import { mediaquery } from '@kit.ArkUI'; let listener = mediaquery.matchMediaSync('(orientation: landscape)'); //监听横屏事件 function onPortrait(mediaQueryResult: mediaquery...

OpenHarmony
380
0
2024-12-18 15:58:44

如何实现跨文件组件复用

在应用开发中,我们通常需要使用相同功能和样式的ArkUI组件,例如购物页面中会使用相同样式的Button按钮、Text显示文字,我们常用的方法是抽取公共样式或者封装成一个自定义组件到公共组件库中以减少冗余代码。 当需要适用于多个原生组件结合的场景,如Image+Text等复合自定义组件时,推荐使用跨文件组件复用方案。 具体实现可参考如下步骤: 1.提供方在公..

OpenHarmony
308
0
2024-12-18 15:58:05

如何完成挖孔屏的适配

通过setWindowLayoutFullScreen、setWindowSystemBarEnable将窗口设置为全屏,并且隐藏顶部状态栏。 onWindowStageCreate(windowStage: window.WindowStage): void { AppStorage.setOrCreate('context', windowStage)..

OpenHarmony
422
0
2024-12-18 15:56:34

如何在Page中获取WindowStage实例

方式一:在onWindowStageCreate方法中获取 import { UIAbility } from '@kit.AbilityKit'; import { hilog } from '@kit.PerformanceAnalysisKit'; import { window } from '@kit.ArkUI'; export default..

OpenHarmony
405
0
2024-12-18 15:55:31

List控件加载的数据如何判断是否超过一屏

通过行高计算 @Entry @Component struct AllListItemHeight { private itemHeightArr = [100, 150, 200, 130, 120, 110.130]; private listHeight = 700; scroller = new ListScroller(); build() { ..

OpenHarmony
368
0
2024-12-18 15:54:02

如何解决Text组件文本为内容中文、数字、英文混合时显示省略号截断异常

文本截断是按字截断。例如,英文以单词为最小单位进行截断,若需要以字母为单位进行截断,可在字母间添加零宽空格:\u200B。 从API version 11开始,建议优先组合wordBreak属性设置为WordBreak.BREAK_ALL方式实现字母为单位进行截断,示例代码如下: @Entry @Component struct TextMixExcept..

OpenHarmony
371
0
2024-12-18 15:53:17

如何获取状态管理框架代理前的原始对象

使用getTarget接口获取状态管理框架代理前的原始对象。 参考示例如下: import { UIUtils } from '@kit.ArkUI'; @Observed class Info { name: string = 'Tom'; } @Entry @Component struct GetTargetDemo { @State info: I..

OpenHarmony
352
0
2024-12-18 15:53:00

从0到1上架一个元服务的全流程

鉴于现在官网对于发布元服务的整体流程没有一个很好的讲解,正好要上架一个元服务,所以就整理了一下相关的全流程,供大家参考。 整体流程主要分为如下几步: 1.创建项目 2.AppGallery处理 3.开发工作 4.编译打包 5.发布 接下来开始操作。 一、创建元服务项目 元服务项目的创建,跟普通鸿蒙项目的创建整体上略微有点差异,下面细说 1.DevEcoStu..

HarmonyOS NEXT
463
0
2024-12-18 15:52:45

Button组件无法设置字体最大、最小值

Button组件的labelStyle可以设置Button组件label文本和字体的样式。示例代码如下: @Entry @Component struct ButtonSetTheMaximumAndMinimumFontSizes { @State text: string = 'hello'; @State widthShortSize: number..

OpenHarmony
268
0
2024-12-18 15:51:04

如何实现折叠屏折叠态不适配旋转,展示态适配旋转

在module.json5添加属性"orientation": "unspecified"。 // module.json5 { "module": { ... , "abilities": [ { "name": "EntryAbility", ..., "orientation":"unspecified" // 未定义方向模式,由系统判定 } ] }..

OpenHarmony
445
0
2024-12-18 15:49:22

UI布局默认是多少vp

不管屏幕分辨率是多少,屏幕密度是多少,组件在视觉上呈现的效果是一致的。 vp具体计算公式为:vp= px/(DPI/160) px就是屏幕真实物理像素值,densityPixels是屏幕密度,是和标准DPI的比例,常见取值有0.75,1.0,1.5,2.0,3.0等,在HarmonyOS中,标准DPI为160,以华为mate 40 pro为例,查询得到的de..

OpenHarmony
316
0
2024-12-18 15:48:32

如何设置窗口旋转

步骤一:通过getLastWindow()、createWindow()、findWindow()中的任一方法获取到Window实例。 步骤二:通过设置setPreferredOrientation属性来设置窗口的显示方向属性,使用callback异步回调。参数Orientation提供了窗口显示方向类型枚举。 在EntryAbility.ets中的onWi..

OpenHarmony
332
0
2024-12-18 15:47:36

PX、 VP、 FP 、LPX、Percentage、Resource 详细区别是什么

屏幕像素单位:px,屏幕上的实际像素:1px代表手机屏幕上的一个像素点。 视窗逻辑像素单位:lpx,视窗逻辑像素单位,lpx单位为实际屏幕宽度与逻辑宽度(通过designWidth配置)的比值,designWidth默认值为720。当designWidth为720时,在实际宽度为1440物理像素的屏幕上,1lpx为2px大小。 虚拟像素单位:vp,屏幕密度相..

OpenHarmony
446
0
2024-12-18 15:45:50

实现瀑布流

使用LazyForEach进行数据懒加载,要求数据源实现IDataSource接口及成员方法。使用常量waterFlowData完成瀑布流数据项配置,包含图片资源、商品名称、折扣、售价等内容。 瀑布流效果实现步骤如下: 在生命周期函数aboutToAppear()中初始化瀑布流数据。 WaterFlow容器添加参数footer设置瀑布流滑动至尾部时展示的内容..

OpenHarmony
358
0
2024-12-18 15:44:27

如何加载和使用自定义字体

OpenHarmony
368
0
2024-12-18 15:43:13

TextInput组件获取焦点的几种场景

场景一:TextInput主动获取焦点。 调用focusControl.requestFocus接口可以主动让焦点转移至参数指定的组件上。可参考如下代码: // xxx.ets @Entry @Component struct TextInputExample { build() { Row() { Column() { Button('第二个获取焦点')..

OpenHarmony
381
0
2024-12-18 15:42:07

如何在长按手势回调方法里获取手指触摸点的坐标

使用组合手势的顺序识别,当长按手势事件结束后触发拖动手势事件。在手势回调方法里获取event(GestureEvent类型)的fingerList(FingerInfo[]类型),获取到localX和localY数值,表示相对于当前组件元素原始区域左上角的坐标地址。可参考如下代码 import { promptAction } from '@kit.ArkU..

OpenHarmony
339
0
2024-12-18 15:41:33

如何实现防截屏功能

setWindowPrivacyMode设置窗口是否为隐私模式,设置为隐私模式的窗口,窗口内容将无法被截屏或录屏。此接口可用于禁止截屏/录屏的场景。 方式一:在onWindowStageCreate回调中设置主窗口为隐私模式,具体可参考示例代码: import { window } from '@kit.ArkUI'; import { BusinessEr..

OpenHarmony
453
0
2024-12-18 15:37:05

HarmonyOS NEXT应用开发指南:开屏广告的使用

在开发HarmonyOS NEXT应用时,开屏广告是一个常见的功能模块。尽管它相对简单,但对初次接触的开发者来说,可能还是感到有些陌生。主要原因是它需要新增几个跳转页面,在一个页面中完成广告的请求,然后路由到另外一个页面来展示半屏或全屏广告。 今天,我们将详细讲解如何在HarmonyOS NEXT中实现这一功能,特别是针对全屏广告的展示以及如何在广告关闭后跳..

HarmonyOS NEXT
525
0
2024-12-18 15:36:28

OpenHarmony: 优化import依赖树较大的问题

一、引言 在OpenHarmony ArkTS 开发过程中,时常会遇到 import 依赖树过大的情况,这不仅可能导致项目编译时间变长,还会增加应用的初始加载负担,影响用户体验。 二、动态 import 方法原理 ArkCompiler 具备对动态 import 方法的支持,这一特性允许我们在运行时阶段动态加载模块。其核心原理在于,动态 import 接收一..

OpenHarmony
317
0
2024-12-18 15:33:33

HarmonyOS Next应用开发实战:ArkWeb使用介绍及使用举例

ArkWeb简介 ArkWeb(方舟Web)是HarmonyOS Next中提供的一个Web组件,主要用于在应用程序中显示Web页面内容。这个组件使得开发者可以在HarmonyOS应用中嵌入Web页面,从而降低开发成本,提升开发和运营效率。 使用场景 ArkWeb的常见使用场景包括: 应用集成Web页面:在应用内部页面中使用Web组件嵌入Web页面内容,这对..

HarmonyOS NEXT
453
0
2024-12-18 15:33:18

OpenHarmony: 如何查询应用包的信息

一、引言 在OpenHarmony应用开发中,我们常常需要获取应用包的一些关键信息,比如名称、供应商、版本号、版本文本、安装时间以及更新时间描述信息等。今天,介绍一下如何通过 bundleManager.getBundleInfoForSelf() 接口获取这些重要信息。 二、使用 bundleManager.getBundleInfoForSelf() 接..

OpenHarmony
494
0