HarmonyOS4.0—自定义渐变导航栏开发教程

这篇具有很好参考价值的文章主要介绍了HarmonyOS4.0—自定义渐变导航栏开发教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

今天要分享的是一个自定义渐变导航栏,本项目基于鸿蒙4.0。
先看效果:

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发


这种导航栏在开发中也比较常见,特点是导航栏背景色从透明到不透明的渐变,以及导航栏标题和按钮颜色的变化。

系统的导航栏无法满足要求,我们需要自定义一个导航栏,我的思路是在导航栏中接收一个来自参数opNav,表示导航栏的透明度,根据这个参数动态设置导航栏的透明度和图片标题的颜色,导航栏代码如下:

@Component
export struct navBarView {
  @Prop opNav:number;
  @Prop colorNavBar:string;
  private navHeight:number = 56;
  navItemClick:(index)=>void
  build() {
    Row() {
      Stack({ alignContent: Alignment.Start }) {
        Stack() {
          Image(this.opNav === 1 ? $r('app.media.back_b') : $r('app.media.back_w'))
            .width(24)
            .height(24)
            .onClick(() => {
              this.navItemClick(0)
            })
        }
        .width(34)
        .height(34)
        .opacity(this.opNav === 1 ? 1 : 1 - this.opNav)
        .margin({ left: 15, right: 15 })

      }
      Text('Add Expense')
        .fontSize(15)
        .fontColor(this.opNav === 1 ? Color.Black : Color.White)
        .textAlign(TextAlign.Center)
        .width(120)
        .height(34)
        .opacity(this.opNav === 1 ? 1 : 1 - this.opNav)
      Stack() {
        Image(this.opNav === 1 ? $r('app.media.more_b') : $r('app.media.more_w'))
          .width(24)
          .height(24)
      }
      .width(34)
      .height(34)
      .opacity(this.opNav === 1 ? 1 : 1 - this.opNav)
      .borderRadius(17)
      .margin({ left: 15, right: 15 })
    }
    .width('100%')
    .height(this.navHeight)
    .backgroundColor(this.colorNavBar)
    .zIndex(1)
    .justifyContent(FlexAlign.SpaceBetween)
  }
}

然后在使用导航栏的页面中引入并添加:

import {navBarView} from '../navBarView'
navBarView({ opNav: this.opNav, colorNavBar: this.colorNavBar}

接下来我们需要通过页面滑动的偏移量来计算导航栏的透明度,比如我用的是Scroll:

Scroll(this.scroller) {
        Column() { 
        }.width('100%')
      }.onScroll((xOffset: number, yOffset: number) => {
        this.offsetY = this.scroller.currentOffset().yOffset;
        if (this.offsetY < 0) {
          this.scaleValue = (Math.abs(this.offsetY) + 100) / 100;
        } else {
          this.scaleValue = 1
        }
        if (this.offsetY >= 56) {
          this.offsetY = 56
        }
        this.opNav = this.offsetY / 56;
        this.colorNavBar = `rgba(255,255,255,${this.opNav})`
      })
      .edgeEffect(EdgeEffect.Spring)
      .scrollBar(BarState.Off)

这样一个渐变的导航栏就完成啦。

最后

随着鸿蒙开发越来越火热,我了解到现在有很多小伙伴想入行鸿蒙,但又不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。我给大家整理了一份实用的鸿蒙(Harmony OS)开发学习手册资料用来跟着学习是非常有利于帮助大家提升鸿蒙开发技术的。

相对于网上那些碎片化的知识内容,这份学习资料的知识点更加系统化,更容易理解和记忆。资料包含了、应用开发导读(ArkTS)、HarmonyOS 概念、如何快速入门、开发基础知识、基于ArkTS 开发、等鸿蒙开发必掌握的核心知识要点,内容包含了(技术知识点。

希望这一份鸿蒙学习资料能够给大家带来帮助,有需要的小伙伴自行领取,限时开源,先到先得~无套路领取!!

获取这份完整版高清学习路线,请点击→《鸿蒙星河版开发教程指南》

鸿蒙(Harmony NEXT)最新学习路线

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发


有了路线图,怎么能没有学习资料呢,小编也准备了几套HarmonyOS NEXT学习视频 内容包含以下联

内容包含:ArkTS、TypeScript、ArkUI、资源分类…等知识点。

获取完整版高清学习路线,请点击→《HarmonyOS教学视频》

HarmonyOS教学视频

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发

鸿蒙语法ArkTS、TypeScript、ArkUI等…视频教程

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发

鸿蒙生态应用开发白皮书V2.0PDF:

获取白皮书:请点击→《鸿蒙生态应用开发白皮书V2.0PDF》

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发

鸿蒙 (Harmony OS)开发学习手册

一、入门必看

  1. 应用开发导读(ArkTS)
  2. .……

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发


二、HarmonyOS 概念

  1. 系统定义
  2. 技术架构
  3. 技术特性
  4. 系统安全
  5. …..

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发


三、如何快速入门?

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. 构建第一个JS应用
  4. .……

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发


四、开发基础知识

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. .……

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发


五、基于ArkTS 开发

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. .……

HarmonyOS4.0—自定义渐变导航栏开发教程,鸿蒙工程师,HarmonyOS,鸿蒙,harmonyos,华为,OpenHarmony,鸿蒙,鸿蒙开发,鸿蒙工程师,鸿蒙应用开发


更多了解更多鸿蒙开发的相关知识可以参考:《鸿蒙 (Harmony OS)开发学习手册》文章来源地址https://www.toymoban.com/news/detail-841931.html

到了这里,关于HarmonyOS4.0—自定义渐变导航栏开发教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • HarmonyOS4.0从零开始的开发教程10管理组件状态

    在应用中,界面通常都是动态的。如图1所示,在子目标列表中,当用户点击目标一,目标一会呈现展开状态,再次点击目标一,目标一呈现收起状态。界面会根据不同的状态展示不一样的效果。 图1 展开/收起目标项 ArkUI作为一种声明式UI,具有状态驱动UI更新的特点。当用户

    2024年02月04日
    浏览(43)
  • 鸿蒙 HarmonyOS4.0 Http数据请求封装详解

    步骤 1、定义响应数据格式 2、封装数据请求 3、将各种请求进行模块划分 4、请求示例 项目目录 1、定义响应数据格式 2、封装数据请求 提示:具体更详细的配置请参考官网 3、将各种请求进行模块划分 熟悉vue开发的同学都知道我们不同模块的请求一般放在api目录下进行划分

    2024年02月04日
    浏览(74)
  • HarmonyOS4.0从零开始的开发教程11Video组件的使用

    在手机、平板或是智慧屏这些终端设备上,媒体功能可以算作是我们最常用的场景之一。无论是实现音频的播放、录制、采集,还是视频的播放、切换、循环,亦或是相机的预览、拍照等功能,媒体组件都是必不可少的。以视频功能为例,在应用开发过程中,我们需要通过

    2024年02月04日
    浏览(53)
  • HarmonyOS4.0从零开始的开发教程12给您的应用添加弹窗

    在我们日常使用应用的时候,可能会进行一些敏感的操作,比如删除联系人,这时候我们给应用添加弹窗来提示用户是否需要执行该操作,如下图所示: 弹窗是一种模态窗口,通常用来展示用户当前需要的或用户必须关注的信息或操作。在弹出框消失之前,用户无法操作其他

    2024年02月04日
    浏览(44)
  • 全面升级:华为鸿蒙HarmonyOS4正式发布,玩趣个性化,小艺AI升级

    8月4日新闻,今天下午,华为正式发布了最新版本的鸿蒙操作系统——HarmonyOS 4! 在华为发布会上,鸿蒙HarmonyOS迎来了一系列令人激动的功能升级。其中包括个性化空间、多种生产力工具以及增强的手机AI助手\\\"小艺\\\"。这次更新使得鸿蒙手机系统呈现出全新的特色。让我们一起

    2024年02月13日
    浏览(50)
  • HarmonyOS鸿蒙基于Java开发: Java UI 自定义布局

    当Java UI框架提供的布局无法满足需求时,可以创建自定义布局,根据需求自定义布局规则。 Component类相关接口  表1  Component类相关接口 接口名称 作用 setEstimateSizeListener 设置测量组件的侦听器 setEstimatedSize 设置测量的宽度和高度 onEstimateSize 测量组件的大小以确定宽度和高度

    2024年02月19日
    浏览(55)
  • 华为harmonyos4.0鸿蒙4.0安装谷歌服务框架Play商店,解决从服务器检索信息时出错

    8月4号华为手机发布了全新的harmonyos4.0鸿蒙4.0系统,很多人需要问还是不是支持谷歌服务框架?那么答案是肯定的,它和鸿蒙3是一样的,一样的操作,一样的支持安装谷歌服务框架,安装Google play商店。测试机型,Mate30,Mate40,Mate50,P50,P60,华为的几款折叠屏xs,x3,这几款测试都是

    2024年02月13日
    浏览(52)
  • 【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(一)

    课程地址: 黑马程序员HarmonyOS4+NEXT星河版入门到企业级实战教程,一套精通鸿蒙应用开发 (本篇笔记对应课程第 1 - 2节) 开场白,HarmonyOS 的一个简介,话不多说,直接看图吧! 工欲善其事必先利其器,开发准备需要两件事:1、开发文档;2、开发工具 打开鸿蒙官方网站,

    2024年04月24日
    浏览(47)
  • HarmonyOS4.0系列——07、自定义组件的生命周期、路由以及路由传参

    允许在生命周期函数中使用 Promise 和异步回调函数,比如网络资源获取,定时器设置等; 即被@Entry 装饰的组件生命周期,提供以下生命周期接口: onPageShow 页面加载时触发,页面每次显示时触发一次,包括路由过程、应用进入前台等场景。 onPageHide 从第一个页面跳转第二个

    2024年01月21日
    浏览(42)
  • 微信小程序自定义顶部导航,滚动页面顶部导航颜色渐变

    微信小程序自定义顶部导航栏,使背景图置顶;当向上滚动页面时,实现顶部导航颜色渐变 实现方法 代码如下(示例): 提示:由于不同的手机机型顶部导航高度不一样,所有要获取手机的信息 总共三步: 1、初始化获取顶部导航信息 2、顶部导航文字上方通过view占位,同

    2024年02月11日
    浏览(55)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包