使用鸿蒙HarmonyOs NEXT 开发b站的卡片效果 手把手教学

资源准备:

需要4张图片:分别是页面图,播放图标,评论图标,更多图标

1.实现效果显示:

2.教学视频:

使用鸿蒙HarmonyOs NEXT 开发b站卡片_哔哩哔哩_bilibiliicon-default.png?t=N7T8https://www.bilibili.com/video/BV1NGgreVEm2/

3.源码:

@Entry
@Component
struct Index {build() {Column(){Column(){Stack({alignContent:Alignment.Bottom}){Image($r('app.media.harmonyOs')).borderRadius({topLeft:15,topRight:15})Row({space:20}){Row({space:10}){Image($r('app.media.play')).width(20).fillColor(Color.White)Text('520万').fontColor(Color.White)}Row({space:5}){Image($r('app.media.comment')).width(24).fillColor(Color.White)Text('6666').fontColor(Color.White)}Blank()Text('13:14').fontColor(Color.White)}.padding(15).width('100%')}.height(180).width('100%')Column(){Text('使用HarmonyOs NEXT开发B站卡片的HarmonyOs的界面效果').fontSize(22).fontWeight(FontWeight.Bold).textOverflow({overflow:TextOverflow.Ellipsis}).maxLines(2)Blank()Row(){Text('20万点赞').fontSize(18).backgroundColor('#fff8e4e4').fontColor('#f56027').padding(5).borderRadius(5)Image($r('app.media.more')).width(24)}.width('100%').justifyContent(FlexAlign.SpaceBetween)}.height(120).padding(10)}.height(300).width(300).backgroundColor(Color.White).borderRadius(15)}.padding(10).width('100%').height('100%').backgroundColor(Color.Gray)}
}

4.加上注释后的源码

@Entry // 标记这个组件作为页面的入口点
@Component // 标记这个结构为一个组件
struct Index { // 定义一个名为Index的结构体组件build() { // 组件的构建方法Column(){ // 创建一个垂直布局的容器Column(){ // 再次创建一个垂直布局的容器,用于嵌套布局Stack({alignContent:Alignment.Bottom}){ // 创建一个堆叠布局容器,内容对齐到容器的底部Image($r('app.media.harmonyOs')) // 加载一个图片资源,这里是HarmonyOS的图.borderRadius({ // 设置图片的圆角topLeft:15, // 左上角圆角大小topRight:15 // 右上角圆角大小})Row({space:20}){ // 创建一个水平布局的行,子元素之间间隔20Row({space:10}){ // 再次创建一个水平布局的行,用于嵌套布局Image($r('app.media.play')) // 加载一个播放图标的图片资源.width(20) // 设置图片宽度.fillColor(Color.White) // 设置图片填充颜色为白色Text('520万') // 显示播放次数.fontColor(Color.White) // 设置文字颜色为白色}Row({space:5}){ // 创建一个水平布局的行,子元素之间间隔5Image($r('app.media.comment')) // 加载一个评论图标的图片资源.width(24) // 设置图片宽度.fillColor(Color.White) // 设置图片填充颜色为白色Text('6666') // 显示评论数量.fontColor(Color.White) // 设置文字颜色为白色}Blank() // 空白元素,用于占位Text('13:14') // 显示视频时长.fontColor(Color.White) // 设置文字颜色为白色}.padding(15) // 设置内边距.width('100%') // 设置宽度为父容器宽度的100%}.height(180) // 设置堆叠布局容器的高度.width('100%') // 设置宽度为父容器宽度的100%Column(){ // 创建一个垂直布局的容器Text('使用HarmonyOs NEXT开发B站卡片的HarmonyOs的界面效果').fontSize(22) // 设置文字大小.fontWeight(FontWeight.Bold) // 设置文字加粗.textOverflow({overflow:TextOverflow.Ellipsis}) // 文字超出部分显示省略号.maxLines(2) // 设置最大行数为2Blank() // 空白元素,用于占位Row(){ // 创建一个水平布局的行Text('20万点赞') // 显示点赞数量.fontSize(18) // 设置文字大小.backgroundColor('#fff8e4e4') // 设置背景颜色.fontColor('#f56027') // 设置文字颜色.padding(5) // 设置内边距.borderRadius(5) // 设置圆角Image($r('app.media.more')) // 加载一个更多按钮的图片资源.width(24) // 设置图片宽度}.width('100%') // 设置宽度为父容器宽度的100%.justifyContent(FlexAlign.SpaceBetween) // 设置主轴对齐方式为两端对齐}.height(120) // 设置垂直布局容器的高度.padding(10) // 设置内边距}.height(300) // 设置嵌套垂直布局容器的高度.width(300) // 设置宽度.backgroundColor(Color.White) // 设置背景颜色为白色.borderRadius(15) // 设置圆角}.padding(10) // 设置外边距.width('100%') // 设置宽度为父容器宽度的100%.height('100%') // 设置高度为父容器高度的100%.backgroundColor(Color.Gray) // 设置背景颜色为灰色}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/859575.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Huffman树——AcWing 148. 合并果子

目录 Huffman树 定义 运用情况 注意事项 解题思路 AcWing 148. 合并果子 题目描述 运行代码 代码思路 其它代码 代码思路 Huffman树 定义 它是一种最优二叉树。通过构建带权路径长度最小的二叉树,经常用于数据压缩等领域。 运用情况 在数据压缩中&a…

【机器学习】半监督学习可以实现什么功能?

目录 一、什么是机器学习二、半监督学习算法介绍三、半监督学习算法的应用场景四、半监督学习可以实现什么功能? 一、什么是机器学习 机器学习是一种人工智能技术,它使计算机系统能够从数据中学习并做出预测或决策,而无需明确编程。它涉及到…

Java研学-RBAC权限控制(八)

九 登录登出 1 登录作用 判断员工是否有权限访问,首先得知道现在操作的人是谁,所以必须先实现登录功能 2 登录流程 ① 提供登录页面,可输入用户名与密码信息,并添加执行登录的按钮。(登录页面不能被拦截)…

意识清晰,对答如流,但手脚活动受限 是脊髓损伤?

在医学领域,有一种情况常常令人困惑:患者意识清醒,交流无碍,但手脚的活动却受到限制。这种情况可能源于多种原因,其中之一就是脊髓损伤。本文将对脊髓损伤进行科普,帮助大家更好地理解这一复杂的医学问题。…

AIGC技术的发展现状与未来趋势探讨

AIGC技术的发展现状与未来趋势探讨 随着人工智能(AI)技术的迅猛发展,AI生成内容(AI-Generated Content,AIGC)成为了一项颠覆性的技术,它能够自动生成文本、图像、音频和视频等多种内容。本文将…

示例:推荐一个基于第三方QRCoder.Xaml封装的二维码显示控件

一、目的:基于第三方QRCoder.Xaml封装的二维码控件,为了方便WPF调用 二、效果如下 功能包括:背景色,前景色,中心图片设置和修改大小,二维码设置等 三、环境 VS2022 四、使用方式 1、安装nuget包&#xf…

数据可视化期末总结

期末考试重点(世界上最没意义的事情) 选择 p8 数据可视化的标准: 实用、完整、真实、艺术、交互(性) p21 色彩三属性 色相、饱和度、亮度 p23 视觉通道的类型: 记得色调是定性 p39 散点图(二维…

Kotlin 运行代码片段多种方式

目录 场景描述 一、Scratch files and worksheets in the IDE 1、Scratch files(草稿文件) 特点: Scratch files文件创建步骤: 功能解释: Scratch Buffer笔记文件: 2、Worksheets(工单) 1)、创建方式不同。 …

国内有哪些比较优秀的wordpress主题?

WordPress作为全球最受欢迎的开源内容管理系统之一,拥有众多优质的主题供用户选择。那么国内有哪些比较优秀的wordpress主题呢?下面小编就和大家分享国内功能比较完善比较受欢迎的wordpress主题。 wordpress主题合集:WP主题-办公人导航https:…

浅析缓存技术

缓存技术的原理 缓存技术通过在内存中存储数据副本来加速数据访问。当应用程序需要数据时,首先检查缓存是否存在数据副本,如果有则直接返回,否则再从原始数据源获取。这种机制大大减少了访问时间,提升了系统的响应速度和整体性能。…

利用Frp实现内网穿透(docker实现)

文章目录 1、WSL子系统配置2、腾讯云服务器安装frps2.1、创建配置文件2.2 、创建frps容器 3、WSL2子系统Centos服务器安装frpc服务3.1、安装docker3.2、创建配置文件3.3 、创建frpc容器 4、WSL2子系统Centos服务器安装nginx服务 环境配置:一台公网服务器&#xff08…

centos7 根目录扩容

1、先检查一下磁盘空间 [rootlocalhost ~]# lsblk 二、使用fdisk创建新分区 [rootlocalhost ~]# fdisk /dev/vdb 1、输入 p ,查看当前分区表; 2、输入 n ,新建一个分区; 3、再输入 p ,选择分区类型为主分区&#x…

智能化改造助力企业高质量发展

引言 背景介绍 在当今全球经济环境中,变化和不确定性已成为常态。企业面临的竞争压力不断增加,市场竞争日益激烈。新兴市场的崛起、技术进步和消费者需求的快速变化,使得传统的商业模式和生产方式面临巨大挑战。为了在这样的环境中保持竞争力…

摄影约拍管理系统

摘 要 摄影约拍管理系统是一种基于SSM框架的系统,旨在为摄影师和用户提供便捷的约拍服务。本文通过对系统的设计与实现,解决了传统约拍方式中存在的信息不对称、预约流程繁琐等问题。本文介绍了系统的研究背景与意义,分析了国内外发展现状&a…

应届毕业之本科简历制作

因为毕设以及编制岗位面试,最近好久没有更新了,刚好有同学问如何制作简历,我就准备将我自己制作简历的流程分享给各位,到此也算是一个小的结束,拿了工科学位证书毕业去做🐂🐎了。 简历主要包含内…

光泽正在褪去,所以我们又回到了人工智能领域。

光泽正在褪去,所以我们又回到了人工智能领域。 人工智能冬天将被私有化 自从“人工智能”这个流行词在20世纪50年代被创造出来以来,人工智能经历了几次繁荣和萧条周期。 一种新的技术方法看起来很有趣,并取得了一些成果。它被荒谬地炒作并获…

中国341城市生态系统服务价值数据集(2000-2020年)

生态系统服务反映了人类直接或者间接从自然生态系统中获得的各种惠益,对支撑和维持人类生存和福祉起着重要基础作用。目前针对全国城市尺度的生态系统服务价值的长期评估还相对较少。我们在Xie等(2017)的静态生态系统服务当量因子表基础上&am…

设计模式导读:建造者模式的细腻之处与编程技巧

笔者的碎碎念 其实之前有写过建造者模式的文章,但是感觉其实写的不怎么样,而且自己也理解的一般,但是阅读一些框架源码发现,这些模式真的蛮重要的,很多框架例如OkHttp,Retrofit等等都大量使用了建造者模式…

人脸处理——人脸换脸基础算法探索与应用测试指南

人工智能(AI)彻底改变了我们生活的许多方面,而这项技术的应用之一就是AI换脸工具。这些工具使用先进的计算机视觉技术和深度学习算法,例如生成对抗网络 (GAN),在照片或视频中将一个人的脸与另一个人的脸交换。 1. Dee…

六西格玛培训公司:解锁成功之门,让企业与个人共赴“嗨”途

在竞争激烈的21世纪,六西格玛培训公司手握一把神奇的钥匙,帮助企业及个人轻松开启成功的大门。 对企业来说: 产品质量飞跃:不再是偶尔的精品,而是每个产品都如同精雕细琢的艺术品,吸引无数顾客争相购买。…