.NET MAUI 社区工具包 1.3版本发布
2022 年 10 月 4 日,微软发布了 .NET MAUI 社区工具包的 1.3 版,具体参见微软官方博客:https://devblogs.microsoft.com/dotnet/announcing-the-dotnet-maui-community-toolkit-v13/ ,该工具包是 MAUI 官方应用程序框架的补充库。此版本包括错误修复和多项增强功能,例如 gravatar 支持、彩色状态栏和控件的淡入淡出动画。
MAUI(多应用程序用户界面)框架是微软用于跨平台应用程序开发的最新框架,取代了 Xamarin 和 Xamarin Forms。它已经在2022年8月正式发布,在 GitHub 上仍然有数百个未解决的 Bug,社区因此认为官方过早地发布了这个版本。
.NET MAUI区工具包 (NMCT) 是微软在 GitHub 上托管的 .NET 社区工具包之一。他们的目的是让社区贡献官方框架中缺少的有用代码。社区工具包作为开源软件发布,它们鼓励开发人员提交他们的贡献。
NCMT 的第一个版本于 2021 年 7 月推出,作为现有 Xamaring 社区工具包的替代品。 1.3 版本是继今年 3 月 NCMT 正式发布后的第三个增强版本。其中两项工具包改进已作为行为实现,这是MAUI框架中的设计决策,允许开发人员向现有用户界面控件添加功能,而无需对它们进行子类化并使用扩展类。
彩色状态栏是一种称为状态栏行为的新行为类。它允许开发人员将其添加到页面行为的集合中,指定状态栏颜色和样式(无论是深色还是浅色内容)。
<ContentPage.Behaviors>
<toolkit:StatusBarBehavior StatusBarColor="Fuchsia" StatusBarStyle="LightContent" />
</ContentPage.Behaviors>
如果开发人员以 iOS 平台为目标,则在 Info.plist 元数据文件中稍作更改以支持此功能。
淡入淡出动画将添加到现有的动画行为类中。它允许开发人员对可视 UI 元素的不透明度进行动画处理,从其原始不透明度到指定的不透明度级别,然后再返回。
此动画的源代码如下所示:
<Button Text="Click this Button">
<Button.Behaviors>
<toolkit:AnimationBehavior EventName="Clicked">
<toolkit:AnimationBehavior.AnimationType>
<toolkit:FadeAnimation Opacity="0.2"/>
</toolkit:AnimationBehavior.AnimationType>
</toolkit:AnimationBehavior>
</Button.Behaviors>
</Button>
涂鸦图像源允许开发人员利用现有的Gravatar来获取用户配置文件。它被实现为一个名为GravatarImageSource 的专用图像源类,其中 Email 属性指定用户配置文件。
<Image>
<Image.Source>
<toolkit:GravatarImageSource
CacheValidity="1"
CachingEnabled="True"
Email="youremail@here.com"
Image="MysteryPerson" />
</Image.Source>
</Image>
图像源中还有其他属性可以进一步优化 gravatar 的缓存生命周期,或者在找不到 gravatar 时提供默认图像。
此版本中的一个小增强功能是为微软的社区工具包提供了SourceLink 调试符号。源链接允许Visual Studio 下载 NuGet 包的源代码和调试元数据。开发人员在调试使用库的代码时,可以单步执行库实现本身。
新添加的功能已在 NMCT 的示例应用程序中提供,该应用程序也托管在 GitHub 上。
.NET MAUI 社区工具包 1.3版本发布的更多相关文章
- 【翻译】Ext JS 6.2 早期访问版本发布
原文:Announcing Ext JS 6.2 Early Access 非常开心,Sencha Ext JS 6.2早期访问版本今天发布了.早期访问版本的主要目的是为了让大家进行测试并评估Ext ...
- JEECG 3.8宅男优化版本发布
1024程序员节宅男节日快乐 -- JAVA快速开发平台,JEECG 3.8宅男优化版本发布 - JEECG开源社区 - CSDN博客https://blog.csdn.net/zhangdaisco ...
- 意料之外,情理之中,Spring.NET 3.0 版本发布-
意料之外,情理之中,Spring.NET 3.0 版本发布- 备受社区和企业开发者广泛关注的Spring.NET在上周发布了3.0版本,并且目前已经保持着持续的更新,让我们一起来看一看他究竟发布了哪些 ...
- git commit 、CHANGELOG 和版本发布的标准自动化
一直以来,因为团队项目迭代节奏很快,每次发布的更新日志和版本更新都是通过人肉来完成的.有时候实在忙的团团转,对于手动的写这些更新信息就显得力不从心了.对于团队新来的小伙伴,有时候遇到些紧急情况,就更显 ...
- 未来云原生世界的“领头羊”:容器批量计算项目Volcano 1.0版本发布
在刚刚结束的CLOUD NATIVE+ OPEN SOURCE Virtual Summit China 2020上,由华为云云原生团队主导的容器批量计算项目Volcano正式发布1.0版本,标志着V ...
- 支持边云协同终身学习特性,KubeEdge子项目Sedna 0.3.0版本发布!
摘要:随着边缘设备数量指数级增长以及设备性能的提升,边云协同机器学习应运而生,以期打通机器学习的最后一公里. 本文分享自华为云社区<支持边云协同终身学习特性,KubeEdge子项目Sedna 0 ...
- Erda 1.1 版本发布|3 大亮点特性最新解读
来源|尔达 Erda 公众号 Erda v1.1 Changelog: https://github.com/erda-project/erda/blob/master/CHANGELOG/CHA ...
- GeneralUpdate20220323里程碑版本发布
大家好我是juster,GeneralUpdate的开源项目作者.这次将发布GeneralUpdate里程碑版本,该版本发生了巨大改变历时4个月的时间终于要和大家见面了.开源不易希望大家能多多支持.可 ...
- KubeEdge 1.12版本发布,稳定性、安全性、可扩展性均带来大幅提升
摘要:2022年9月29日,KubeEdge发布1.12版本.新版本新增多个增强功能,在扩展性.稳定性.安全性上均有大幅提升. 本文分享自华为云社区<KubeEdge 1.12版本发布,稳定性. ...
随机推荐
- python将命令输出写入文件或临时缓存
python将命令输出写入文件 将文件写入到对应文件,方便后期处理或保存 def write_file(file_path): with open(file=file_path, mode=" ...
- linux nginx启用php
cd /usr/local/php/etc mv php-fpm.conf.default php-fpm.conf vi /usr/local/nginx/conf/nginx.conf # 删除如 ...
- 中高级Java程序员,挑战20k+,知识点汇总(一),Java修饰符
1 前言 工作久了就会发现,基础知识忘得差不多了.为了复习下基础的知识,同时为以后找工作做准备,这里简单总结一些常见的可能会被问到的问题. 2 自我介绍 自己根据实际情况发挥就行 3 Java SE ...
- Vue3.0工程创建 && setup、ref、reactive函数 && Vue3.0响应式实现原理
1 # 一.创建Vue3.0工程 2 # 1.使用vue-cli创建 3 # 官方文档: https://cli.vuejs.org/zh/guide/creating-a-project.html# ...
- JavaScript数组方法总结,本文是根据数组原型上的方法进行总结,由于方法太多将会分篇章发布
通过浏览器控制台 console 可查看到 Array 数组上原型的所有方法(如下图).对于原型问题此文章暂不过多叙述,单针对对象中的方法进行自我看法的总结:细心的同学可以发现对象原型上所携带的方法基 ...
- HTTP 协议概述
什么是 HTTP 协议 什么是协议? 协议是指双方,或多方,相互约定好,大家都需要遵守的规则,叫协议. 所谓 HTTP 协议,就是指,客户端和服务器之间通信时,发送的数据,需要遵守的规则,叫 HTTP ...
- 基于图像二维熵的视频信号丢失检测(Signal Loss Detection)
1 图像二维熵 图像二维熵作为一种特征评价尺度能够反映出整个图像所含平均信息量的高低,熵值(H)越大则代表图像所包含的信息越多,反之熵值(H)越小,则图像包含的信息越少.对于图像信息量,可以简单地认 ...
- Python带我起飞——入门、进阶、商业实战_ 入门版电子书籍分享,
Python带我起飞--入门.进阶.商业实战_ 免费下载地址 内容简介 · · · · · · <Python带我起飞--入门.进阶.商业实战>针对Python 3.5 以上版本,采用&q ...
- mybatis 14: 多对一关联查询
业务背景 根据订单id查询订单的信息,以及该订单所属的客户的基本信息(不包括该客户自己的订单信息) 两张数据表 客户表 订单表 实体类 客户实体类:Customer private Integer i ...
- js实现多条件排序
1.sort排序允许接受一个参数(函数),这个函数接受2个形参a,b,并且通过冒泡的方式比较.例子:Arr.sort((a,b) => a-b); 升序排列Arr.sort((a,b) =& ...