IT之家学院:利用Win10通知巧妙实现UWP桌面歌词

  • 时间:
  • 浏览:0
  • 来源:1分快3_1分快3平台_1分快3网投平台

感谢IT之家女网友 视频视频Zcxsythenew的原创投稿

Windows 10创意者更新(Creators Update)原困发布了哪哪几个月。亲们 应该还记得,微软在你这个 版本中新增了在通知中换成进度条的功能,并首先在应用商店用上了你这个 功能。不过,你有只能 想过,你这个 通知可不可不可否做其他别的东西呢?下面,我来介绍一下,咋样以Creator的身份,做出1个 Creative的桌面歌词。

成果示例

我原困做了1个 很简单的实现桌面歌词的应用。原困你看不懂代码,让他选着直接安装你这个 应用,有无捧个场。应用下载地址:请点此链接。

在电脑上的安装最好的办法 :

1.打开旁加载。

2.下载AppPackage.zip。

3.全版解压,但会 找到ps1文件,右键单击,但会 选着“使用PowerShell运行”。

4.遇到的提示一律允许。

效果图:

通知的效果

整个屏幕的效果

利弊分析

可不可不可否看完,你这个 桌面歌词占了屏幕右下角挺大的一块(尤其是Win10秋季创意者更新)。让他作适当的调整,这个换成进度条和按钮(按钮没得本文介绍的范围内),仅保留歌词,曾经占用的空间会少其他。另外,此通知可不可不可否常驻在屏幕上,为了实现你这个 效果,在手机上会原困屏幕的其它每段无法操作(可不可不可否划掉通知,但曾经桌面歌词就失去意义),但会 ,本教程仅适用于PC和除了手机以外的其它原困适合的设备。

第一步:启动播放器

MediaPlayer player = new MediaPlayer();

player.AutoPlay = true;

StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///SampleSong.mp3"));

player.Source = MediaSource.CreateFromStorageFile(file);

以上的代码表示新建1个 播放器,为它设置1个 文件资源,但会 让它自动播放。

第二步:挂载事件

播放器大概每0.25秒就会触发一次PositionChanged事件,频率还是挺高的。亲们 可不可不可否利用你这个 事件来显示进度、时间和歌词。

player.PlaybackSession.PositionChanged += PlaybackSession_PositionChanged;

第三步:发送通知

在Visual Studio中,点击工具>NuGet包管理器>程序包管理器控制台。等待“PM>”字符出显,但会 输入

Install-Package Microsoft.Toolkit.Uwp.Notifications

按回车键并等待完成。

但会 ,可不可不可否使用如下代码发送通知:

第一屏:此屏代码实现的效果有:

1.设置标题为“Scarborough Fair”

2.换成了进度条,但会 绑定了1个字符串(BindableString)

3.设置了Scenario,使其常驻在屏幕上

4.设置了静音

第二屏:此屏代码实现的效果有:

1.给曾经绑定的1个字符串指定值

2.让他是什么通知指定唯一的Tag

3.设置SequenceNumber为0,使系统知道你这个 数据是及时的

4.发送通知

第四步:外理事件

还记得吗?亲们 曾经挂载了PositionChanged事件,现在该是外理它的曾经了。

图中的“Sample”表示Tag。

这里的progressValue用于显示进度条,是从0到1的数字(转为字符串),我通过Milliseconds进行计算,原困我可不可不可否要它尽量精确。

progressStatus显示当前播放的时间,其中sec是比较容易忽略的。当秒数小于10的曾经,十位数是0,只能省略,但会 会显示“1:2”而都是“1:02”。

亲们 可不可不可否发现这里并只能 设置progressValueString,原困亲们 原困在第三步设置它为总时间4:13,而你这个 总时间是不要再改变的,很多很多在这里亲们 不要再设置它。

最后是最难的progressTitle。这里你可不可不可否解析lrc原困其它歌词格式,可不可不可否由你另一方来完成。不过,原困你还只能 会解析歌词,而又想提前体验一下效果,我提供临时的外理方案,曾经你再慢慢学习解析歌词。

源代码下载:

考虑到水印原困遮挡代码以及第四步的临时外理方案的代码过长,本文提供源代码下载。

以上的代码请点此链接下载

选着“MusicSampleforITHome.zip”即可。

下一步做有哪些?

下一步当然是把上端的代码化用了,原困让他发现所有的播放源、歌曲名等等原困在代码上端写死了。你可不可不可否做的回会将其灵活地运用在你可不可不可否它的位置。祝你成功!