0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙开发实战:快速上手【万能卡片】

jf_46214456 来源:jf_46214456 作者:jf_46214456 2024-03-26 15:31 次阅读

(一)练习准备

本案例使用HUAWEI DevEco Studio 3.0.0.800,API4-API7都可以体验,由于IDE版本与API不断升级与兼容性等问题,大家练习时可能会遇到一些细节上的差异,整体流程是一致的。

(二)创建项目

1.创建工程项目

打开DevEco Studio选择你的Ability 模板,这里我们选择Empty Ability模板,然后点击Next进行下一步。如图1所示。

image.png

2.配置工程项目

配置的项目工程,如图2和图3所示,然后单击Finish创建。

%E5%9B%BE%E7%89%8728.png

%E5%9B%BE%E7%89%8729.png

(三)创建卡片

1.找到entry中src->main下的js文件,右击选择new中的Service Widget选项,如图4所示。

image.png

2.选择immersive Data卡片模板,如图5所示,点击Next进行下一步。

%E5%9B%BE%E7%89%8731.png

3.配置卡片模板信息,如图6,然后点击Finish创建。

%E5%9B%BE%E7%89%8732.png

(四)修改代码

1.查看js下刚刚创建的卡片,如图7。

image.png

打开该文件下的index.hml文件,修改代码。

< !--    用堆叠stack组件包裹节点div组件-- >
< stack style="background-color: #f5d354;width: 100%;height: 100%;" onclick="routerEvent" >
< !--    右边图片(添加此段代码)-- >
    < div class="right-img" >
        < image class="images" src="/common/ic_default_image.png" alt="img" >< /image >
    < /div >
< !--    标题信息-- >
    < div class="container" >
        < div class="title_wrapper" >
            < text class="title_big" >
                {{ $t('strings.title_big') }}
            < /text >
            < text class="title_small" >
                {{ $t('strings.title_small') }}
            < /text >
        < /div >
< !--    文本信息 (修改text信息,后面加上数字标记123)-- >
        < div class="list_wrapper" >
            < div class="item_first" >
                < image class="item_image" src='/common/ic_default.png' >< /image >
                < text class="item_text" onclick="routerEvent" >{{ $t('strings.text') }}< /text >
            < /div >
            < div class="item" >
                < image class="item_image" src='/common/ic_default.png' >< /image >
                < text class="item_text" onclick="routerEvent" >{{ $t('strings.text1') }}< /text >
            < /div >
            < div class="item" >
                < image class="item_image" src='/common/ic_default.png' >< /image >
                < text class="item_text" onclick="routerEvent" >{{ $t('strings.text2') }}< /text >
            < /div >
            < div class="item" >
                < image class="item_image" src='/common/ic_default.png' >< /image >
                < text class="item_text" onclick="routerEvent" >{{ $t('strings.text3') }}< /text >
            < /div >
            < div class="item_last" >
                < image class="item_image" src='/common/ic_default.png' >< /image >
                < text class="item_text" onclick="routerEvent" >{{ $t('strings.text4') }}< /text >
            < /div >
        < /div >
    < /div >
< /stack >复制

打开该文件下的index.css文件,修改代码(找到对应修改部分)。

.container {
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
/*注释代码*/
/*    background-color: dodgerblue;*/
/*    background-image: url('/common/ic_default_image@3x.png');*/
/*    background-repeat: no-repeat;*/
/*    background-size: cover;*/
}

/*添加.right-img样式*/
.right-img{
    width: 40px;
    height: 40px;
    position: absolute;
    right: 10px;
    top: 10px;
    border-radius: 12px;
}

/*将.title_big中的font-size: 19px;改为16px*/
.title_big {
    font-size: 16px;
    font-weight: bold;
    color: white;
}

/*适配wearable*/
@media (device-type: wearable) {
    .right-img{
        display: none;
    }
}
复制

打开该文件下的i18n文件,打开.json文件,修改代码。

zh_CN.json:

{
  "strings": {
    "title_big": "标题",
    "title_small": "这里是副标题",
    "text": "文本",
    "text1": "文本1",
    "text2": "文本2",
    "text3": "文本3",
    "text4": "文本4"
  }
}复制

en_US.json:

{
  "strings": {
    "title_big": "Title",
    "title_small": "Text",
    "text": "Text",
    "text1": "Text1",
    "text2": "Text2",
    "text3": "Text3",
    "text4": "Text4"
  }
}复制

2.打开js下的default文件,打开pages文件。

修改代码:

index.hml

< div class="container" >
    < text class="title" >你好,欢迎来到< /text >
    < text class="title" >{{title1}}< /text >
    < text class="title" >{{title2}}< /text >
< /div >复制

index.css

.container {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}

.title {
    font-size: 30px;
    color: #000000;
    opacity: 0.9;
    margin: 4px 0px;
}

@media screen and (device-type: tablet) and (orientation: landscape) {
    .title {
        font-size: 100px;
    }
}

@media screen and (device-type: wearable) {
    .title {
        font-size: 28px;
        color: #FFFFFF;
    }
}

@media screen and (device-type: tv) {
    .container {
        background-image: url("/common/images/Wallpaper.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }

    .title {
        font-size: 100px;
        color: #FFFFFF;
    }
}

@media screen and (device-type: phone) and (orientation: landscape) {
    .title {
        font-size: 60px;
    }
}复制

index.js

export default {
    data: {
        title1: "元服务",
        title2: "新应用时代和新世界!"
    },
    onInit() {}
}复制

搜狗高速浏览器截图20240326151547.png

(五)运行效果

1.打开模拟器,如图9所示

%E5%9B%BE%E7%89%8734.png

2.进行登录,如图

%E5%9B%BE%E7%89%8735.png

会自动跳出华为开发者联盟账户,输入账号密码进行登录,登陆成功,然后返回DevEco Studio。

3.选择模拟器中P40设备进行开启。点击小三角运行项目,如图11;运行成功后会出现初始化页面,如图12;点击模拟器中的home键,回到桌面,然后从手机屏幕的左下角或者右下角斜向上滑动,进入服务中心,如图13。

1.png

4.进入服务中心后可以看见创建的卡片(这是项目创建初始化自身就有的卡片widget),如图14;轻按卡片,添加至桌面,如图15;卡片成功添加至桌面,如图16。

2.png

5.长按桌面卡片,出现弹窗,单击更多万能卡片,选择我们之前新创建的卡片,并且添加至桌面,如图17、图18、图19。

3.png

点击新添加至桌面的卡片,回到“你好,欢迎来到元服务应用新时代和新世界!”页面。这里想显示其他模拟器效果,重复以上打开模拟器的步骤即可,本案例支持Phone、Tablet、Wearable卡片效果显示。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IDE
    IDE
    +关注

    关注

    0

    文章

    338

    浏览量

    46773
  • 鸿蒙
    +关注

    关注

    57

    文章

    2361

    浏览量

    42878
收藏 人收藏

    评论

    相关推荐

    《HarmonyOS第一课》焕新升级,赋能开发快速掌握鸿蒙应用开发

    注重理论与实践的结合,提供让开发快速上手的codelab编程练习,开发者能在实战中巩固所学,系统掌握核心
    发表于 01-02 14:24

    鸿蒙Flutter实战:07混合开发

    # 鸿蒙Flutter实战:混合开发 鸿蒙Flutter混合开发主要有两种形式。 ## 1.基于har 将flutter module
    发表于 10-23 16:00

    万能转换开关的作用有哪些

    万能转换开关是一种广泛应用于工业自动化、电力系统、机械设备等领域的电气元件。它具有多种功能和优点,能够实现对电路的控制、保护和转换。 电路控制功能 万能转换开关最基本的作用是对电路进行控制。它可
    的头像 发表于 08-20 10:18 1202次阅读

    万能断路器参数设置的基本原则

    万能断路器是一种广泛应用于电力系统、工业自动化和建筑电气等领域的保护和控制设备。它具有过载保护、短路保护、欠压保护等多种功能,能够有效地保护电气设备和线路的安全运行。为了确保万能断路器的正常工作
    的头像 发表于 08-14 15:50 1020次阅读

    万能断路器跳闸后如何复位

    万能断路器是一种广泛应用于电力系统中的保护装置,其主要作用是在电路发生故障时,能够迅速切断电路,以保护电气设备和人身安全。然而,在实际使用过程中,万能断路器可能会出现跳闸现象,这时候就需要进行复位
    的头像 发表于 07-31 15:24 1719次阅读

    万能断路器参数如何设置

    万能断路器是一种广泛应用于电力系统、工业自动化和建筑电气领域的电气设备,其主要功能是在电路中起到过载、短路、欠压等保护作用。正确设置万能断路器参数对于确保设备安全运行和提高系统可靠性具有重要意义
    的头像 发表于 07-31 15:19 2018次阅读

    简述万能电桥测量电容的步骤

    万能电桥是一种测量电感和电容的仪器,具有测量范围广、精度高、操作简便等特点。在测量电容时,万能电桥可以准确地测量出电容的值,为电子电路设计和维修提供了重要的参考数据。下面介绍万能电桥测量电容的步骤
    的头像 发表于 07-26 09:58 927次阅读

    python函数的万能参数

    我们通过一个简单的事例来展示一下函数的万能参数,我们先写一个最简单的函数。
    的头像 发表于 07-17 14:56 349次阅读
    python函数的<b class='flag-5'>万能</b>参数

    AG32的“万能管脚”

    推荐新设计了,也就是说原厂停产这款芯片已经进入倒计时了。客户听说我们的MCU是“万能管脚”的,所以想试一试看能否替换。AG32的确是目前MCU产品中最接近于“万能
    的头像 发表于 07-09 10:00 78次阅读
    AG32的“<b class='flag-5'>万能</b>管脚”

    万能表如何测量电瓶

    电瓶作为汽车、摩托车等交通工具的重要能源储存装置,其性能的好坏直接影响到车辆的正常运行。因此,定期检查电瓶的状态,确保其电量充足、性能稳定,是每位车主都应重视的事项。在众多的电瓶检测工具中,万能
    的头像 发表于 05-20 17:02 1491次阅读

    鸿蒙OS实战开发:【多设备自适应服务卡片

    服务卡片的布局和使用,其中卡片内容显示使用了一次开发,多端部署的能力实现多设备自适应。 用到了卡片扩展模块接口,[@ohos.app.form.FormExtensionAbil
    的头像 发表于 04-09 09:20 869次阅读
    <b class='flag-5'>鸿蒙</b>OS<b class='flag-5'>实战</b><b class='flag-5'>开发</b>:【多设备自适应服务<b class='flag-5'>卡片</b>】

    鸿蒙实战项目开发:【短信服务】

    、OpenHarmony 多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发鸿蒙项目实战等等)鸿蒙(Harmony NEXT) 技术知识点 如果你是一名An
    发表于 03-03 21:29

    使用 Taro 开发鸿蒙原生应用 —— 快速上手鸿蒙应用开发指南

    随着鸿蒙系统的不断完善,许多应用厂商都希望将自己的应用移植到鸿蒙平台上。最近,Taro 发布了 v4.0.0-beta.x 版本,支持使用 Taro 快速开发
    的头像 发表于 02-02 16:09 889次阅读
    使用 Taro <b class='flag-5'>开发</b><b class='flag-5'>鸿蒙</b>原生应用 —— <b class='flag-5'>快速</b><b class='flag-5'>上手</b>,<b class='flag-5'>鸿蒙</b>应用<b class='flag-5'>开发</b>指南

    万能遥控器的设置和使用方法

    万能遥控器是一种能够控制不同品牌电器的设备,它可以将多个遥控器的功能整合到一个遥控器上,方便用户操作。在本文中,我将详细介绍万能遥控器的设置和使用方法。 设置万能遥控器 步骤一:准备工作 在开始设置
    的头像 发表于 01-24 10:57 1.5w次阅读

    【年度精选】2023年度top5榜单——鸿蒙开发经验

    的应用。通过学习本教程,你将了解开源鸿蒙系统在不同场景下的应用和实践,激发你对人工智能和开源鸿蒙系统的兴趣和创造力。 2、开发一个520的HarmonyOS元服务万能
    发表于 01-10 17:19