微信小程序开发 | 音乐小程序项目

news2024/10/4 15:38:42

音乐小程序项目

  • 3.1 开发前的准备
    • 3.1.1 项目展示
    • 3.1.2 项目分析
    • 3.1.3 项目初始化
  • 3.2 【任务1】标签页切换
    • 3.2.1 任务分析
    • 3.2.2 前导知识
    • 3.2.3 编写页面结构和样式
    • 3.2.4 实现标签页切换
  • 3.3 【任务2】音乐推荐
    • 3.3.1 任务分析
    • 3.3.2 前导知识
    • 3.3.3 内容区域滚动
    • 3.3.4 轮播图
    • 3.3.5 功能按钮
    • 3.3.6 热门音乐
  • 3.4 【任务3】播放器
    • 3.4.1 任务分析
    • 3.4.2 前导知识
    • 3.4.3 定义基础数据
    • 3.4.4 实现音乐播放功能
    • 3.4.5 编写播放器页面
    • 3.4.6 控制播放进度
  • 3.5 【任务4】播放器列表
    • 3.5.1 任务分析
    • 3.5.2 编写页面结构和样式
    • 3.5.3实现换曲功能
  • 总结

3.1 开发前的准备

3.1.1 项目展示

音乐小程序项目效果展示:
在这里插入图片描述

3.1.2 项目分析

音乐小程序项目页面结构图

  • tab导航栏
  • content内容区
  • player音乐播放控件
    在这里插入图片描述
    音乐小程序项目目录结构在这里插入图片描述

3.1.3 项目初始化

开发者工具创建空白项目:
在这里插入图片描述
在这里插入图片描述

3.2 【任务1】标签页切换

3.2.1 任务分析

标签页和页面(info.wxml、play.wxml、palylist.wxml)结构图:
在这里插入图片描述

3.2.2 前导知识

swiper组件编写滑动页面结构:
在这里插入图片描述
swiper组件常用属性:
在这里插入图片描述
swiper组件编写滑动页面结构:
在这里插入图片描述
include主要用途:

  • 将代码拆分到多个文件中,可以更方便地查找代码。
  • 将代码公共部分抽取出来。通过外部文件引入。

在这里插入图片描述

3.2.3 编写页面结构和样式

音乐小程序基础页面和样式
在这里插入图片描述
在这里插入图片描述
测试页面info.wxml、page.wxml、play.wxml文件:
在这里插入图片描述
在这里插入图片描述

3.2.4 实现标签页切换

单击导航栏选项卡实现标签页切换:
在这里插入图片描述
通过滚动事件切换页面效果:
在这里插入图片描述

3.3 【任务2】音乐推荐

3.3.1 任务分析

音乐推荐页面结构图:
在这里插入图片描述

3.3.2 前导知识

scroll-view组件的属性及说明:
在这里插入图片描述
scroll-view组件事件对象:
在这里插入图片描述
在这里插入图片描述
scroll-view组件事件对象参数分析:
scrollLeft:横向滚动条左侧到视图左边的距离。
scrollTop:纵向滚动条上端到视图顶部的距离。
scrollHeight:纵向滚动条在Y轴上最大滚动距离。
scrollWidth:横向滚动条在X轴上最大的滚动距离。
deltaX:横向滚动条的滚动状态。
deltaY:纵向滚动条的滚动状态。
image组件属性及说明:
在这里插入图片描述
image组件缩放模式:
image组件缩放模式:
image组件9种裁剪模式:
在这里插入图片描述
image组件缩放模式和裁剪模式测试:
在这里插入图片描述

3.3.3 内容区域滚动

scroll-view组件
在这里插入图片描述

3.3.4 轮播图

swiper组件实现轮播图:
在这里插入图片描述

3.3.5 功能按钮

flex布局实现功能按钮:
在这里插入图片描述

3.3.6 热门音乐

flex布局实现页面布局:
在这里插入图片描述

3.4 【任务3】播放器

3.4.1 任务分析

播放器标签页结构图:
在这里插入图片描述
播放器的具体功能进行分析:
音乐信息:显示当前播放曲目的标题和艺术家。
专辑封面:当音乐播放时,专辑封面会顺时针旋转。
播放进度:显示播放进度,调节音乐进度。

3.4.2 前导知识

audioCtx对象声明的方式:
在这里插入图片描述
音频API接口的属性及说明:
在这里插入图片描述

音频API接口的方法及说明:
在这里插入图片描述
innerAudioContext案例使用:
在这里插入图片描述
slider组件属性及说明:
在这里插入图片描述
slider组件的使用:
在这里插入图片描述
在这里插入图片描述

3.4.3 定义基础数据

音乐播放列表和音乐状态数据:
在这里插入图片描述

3.4.4 实现音乐播放功能

音乐播放逻辑代码:

底部播放器的结构代码:
在这里插入图片描述
在这里插入图片描述
底部播放器的样式代码:
在这里插入图片描述
底部播放器暂停/播放按钮控制歌曲:
在这里插入图片描述
实现播放器切换下一曲歌曲:
在这里插入图片描述

3.4.5 编写播放器页面

播放器页面结构代码:
在这里插入图片描述
在这里插入图片描述
播放器页面样式代码:
在这里插入图片描述
通过CSS3动画实现海报的旋转功能:
在这里插入图片描述
通过CSS3动画实现海报的旋转功能:
在这里插入图片描述

3.4.6 控制播放进度

播放器页面下方的滑块结构:
在这里插入图片描述
在这里插入图片描述
播放器页面下方的滑块样式:
在这里插入图片描述
显示音乐的播放进度:
在这里插入图片描述
控制进度条的长度控制歌曲播放进度:
在这里插入图片描述

3.5 【任务4】播放器列表

3.5.1 任务分析

控制进度条的长度控制歌曲播放进度:
在这里插入图片描述

3.5.2 编写页面结构和样式

控制进度条的长度控制歌曲播放进度:
在这里插入图片描述
控制进度条的长度控制歌曲播放进度:
在这里插入图片描述

3.5.3实现换曲功能

实现换曲功能:
在这里插入图片描述

总结

本章讲解了音乐小程序项目的完整开发流程,其开发步骤包括页面结构的分析、样式的设计、组件的运用等。通过本章的学习,读者能够掌握小程序的基本交互逻辑的开发,能够运用API来实现项目中的特定功能,学会解决开发过程中常见的问题。

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

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

相关文章

15-721 chapter2 内存数据库

Background 随着时代的发展,DRAM可以容纳足够的便宜,容量也变大了。对于数据库来说,数据完全可以fit in memory,但同时面向disk的数据库架构不能很好的发挥这个特性 这张图是disk database的cpu instruction cost 想buffer pool…

使用PyG(PyTorch Geometric)实现基于图卷积神经网络(GCN)的节点分类任务

文章目录基本介绍PyTorch Geometric图卷积神经网络GCN节点分类任务实现Cora数据集搭建GCN模型训练与测试迭代并输出完整代码基本介绍 PyTorch Geometric PyG(PyTorch Geometric)是一个基于PyTorch的库,可以轻松编写和训练图神经网络&#x…

ChatGPT,开启人机交互新篇章

ChatGPT在世界掀起了生成式AI的热潮,2个月实现月活用户过亿,是人类有史以来突破1亿人用户最快的消费端互联网产品,打破了Tiktok9个月破亿用户的纪录。不少专家将其视为第四次工业革命,资本市场也贡献大量涨停。当第一波的热情消退…

Android 7.1 Toast修复之终极篇,进程不奔溃(包含apk和兼容外来dex插件)

修复android 7.1 Toast的篇章: 常规app通过ams lancet 字节编码处理:Android Lancet Aop 字节编码修复7.1系统Toast问题(WindowManager$BadTokenException)多渠道游戏app兼容性处理:Android 7.1 Toast修复之多渠道包动态使用Booster或者Lancet plugin …

在外web浏览器远程访问jupyter notebook服务器【内网穿透】

文章目录前言视频教程1. Python环境安装2. Jupyter 安装3. 启动Jupyter Notebook4. 远程访问4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口转载自远控源码文章:公网远程访问jupyter notebook【cpolar内网穿透】 前言 Jupyter Notebook,它是一个交…

未来城市的微小单元:滴滴即将量产无人车

汽车诞生之后就一直作为除了家庭与公司之外的「第三空间」存在,技术的脚步从未停止过开发汽车的更多可能。尤其无人驾驶技术的出现,进一步解放了驾驶者,也让人们对于这一能够自主移动的第三空间充满了想象。作为未来城市的微小组成单元&#…

( “树” 之 DFS) 226. 翻转二叉树 ——【Leetcode每日一题】

226. 翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入:root [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 示例 2: 输入:root [2,1,3] 输出:[…

ThreadLocal源码分析及内存泄漏

ThreadLocal原理分析及内存泄漏ThreadLocal的使用ThreadLocal原理set方法解析replaceStaleEntry方法解析expungeStaleEntry方法解析cleanSomeSlots方法解析case 1: 向前有脏数据,向后找到可覆盖的Entrycase 2: 向前有脏数据,向后未找到可覆盖的Entrycase…

吴恩达机器学习--线性回归

文章目录前言一、单变量线性回归1.导入必要的库2.读取数据3.绘制散点图4.划分数据5.定义模型函数6.定义损失函数7.求权重向量w7.1 梯度下降函数7.2 最小二乘法8.训练模型9.绘制预测曲线10.试试正则化11.绘制预测曲线12.试试sklearn库二、多变量线性回归1.导入库2.读取数据3.划分…

掌握高效绘制地图的利器——LeafletJs

文章目录前言一、leafletJs是什么?二、快速入门1、安装2、快速入门三、进阶学习1、Map 控件2、Marker 标记3、Popup 弹出窗口4、图层四、项目实战封装文件4.1 基础点位图4.2 行驶轨迹图前言 GIS 作为获取、存储、分析和管理地理空间数据的重要工具,用 G…

数据结构与算法一览(树、图、排序算法、搜索算法等)- Review

算法基础简介 - OI Wiki (oi-wiki.org) 文章目录1. 数据结构介绍1.1 什么是数据结构1.2 数据结构分类2. 链表、栈、队列:略3. 哈希表:略4. 树4.1 二叉树4.2 B 树与 B 树4.3 哈夫曼(霍夫曼)树:Huffman Tree4.4 线段树&a…

编辑文件/文件夹权限 - Win系统

前言 我们经常会遇到由于权限不够无法删除文件/文件夹的情况,解决方案一般是编辑文件/文件夹的权限,使当前账户拥有文件的完全控制权限,然后再进行删除,下文介绍操作步骤。 修改权限 查看用户权限 右键文件/文件夹,…

(函数指针) 指向函数的指针

函数指针- 指向函数的指针函数指针的声明和使用通过函数指针调用函数函数指针做参数函数指针数组函数指针的声明和使用 函数指针的声明格式: 返回值类型 (*函数指针名)(参数列表); 其中: *函数指针名 表示函数指针的名称返回值类型 则表示该指针所指向…

【Kubernetes】StatefulSet对象详解

文章目录简介1. StatefulSet对象的概述、作用及优点1.1 对比Deployment对象和StatefulSet对象1.2 以下是比较Deployment对象和StatefulSet对象的优缺点:2. StatefulSet对象的基础知识2.1 StatefulSet对象的定义2.1.1 下表为StatefulSet对象的定义及其属性&#xff1…

上岸川大网安院

一些感慨 一年多没写过啥玩意了,因为考研去了嘿嘿。拟录取名单已出,经历一年多的考研之路也可以顺利打上句号了。 我的初试成绩是380,政治65,英语81,数学119,专业课115。 回顾这一路,考研似乎也…

分类预测 | MATLAB实现CNN-BiLSTM-Attention多输入分类预测

分类预测 | MATLAB实现CNN-BiLSTM-Attention多输入分类预测 目录分类预测 | MATLAB实现CNN-BiLSTM-Attention多输入分类预测分类效果基本介绍模型描述程序设计参考资料分类效果 基本介绍 MATLAB实现CNN-BiLSTM-Attention多输入分类预测,CNN-BiLSTM结合注意力机制多输…

Vue3使用Vant组件库避坑总结

文章目录前言一、问题二、解决方法三、问题出现原因总结经验教训前言 本片文章主要写了,Vue3开发时运用Vant UI库的一些避坑点。让有问题的小伙伴可以快速了解是为什么。也是给自己做一个记录。 一、问题 vue3版本使用vant失败,具体是在使用组件时失效…

IPBX系统快速部署和Freeswitch 1.10.7自动安装

IPBX系统部署文档 IPPBX系统 1.10.7版本Freeswitch ,手机互联互通,SIP协议,分机互相拨打免费通话清晰,支持wifi或4G网络互相拨打电话,可以对接OLT设备,系统可以部署到本地物理机,也可以部署到阿…

工程质量之研发过程管理需要关注的点

一、背景 作为程序猿,工程质量是我们逃不开的一个话题,工程质量高带来的好处多多,我在写这篇文章的时候问了一下CHATGPT,就当娱乐一下,以下是ChatGPT的回答: 1、提高产品或服务的可靠性和稳定性。高质量的系…

光时域反射仪那个品牌的好用

光时域反射仪 哪个品牌好用 光时域反射仪要怎么选到合适自己的,这些问题 可能一直在困扰这一线的工作人员,下面小编就为大家一一解答下 首先光时域域反射仪是一款检测光纤线路的损耗 长度 以及 事件点的一款设备,在诊断 光纤线路 故障点的情…