前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >.NET MAUI Preview5 状态预览(6月)

.NET MAUI Preview5 状态预览(6月)

作者头像
JusterZhu
发布2022-12-07 19:32:34
9370
发布2022-12-07 19:32:34
举报
文章被收录于专栏:JusterZhu

以下文章来源于CodeShare ,作者痕迹

MAUI Preview5

2021年06月17号, 微软发布了最新的MAUI Preview5, 下面将主要介绍本次的更新内容。

本次更新内容

1.完成了多个UI组件的移植工作 说明: 下面会详细介绍本次与上次的更新差异, 在官方文档中, 微软特意强调了本次即将完成的UI组件移植工作, 例如: CheckBox、Image、Stepper、Button等。

2.单项目模板更新(WinUI整合至一个项目)

  • 上个版本
  • 本次版本

说明: 之前运行WinUI项目, 有老铁选择第二个项目运行会发现报错, 现在你总不会困惑了吧?当然,在最终的版本中, WinUI会被彻底消除, 即保留一个项目用来构建并且部署到所有支持的平台。

3.动画移植 如果大家使用过Xamarin, 应该会比较熟悉这个东西, 本次更新同样带来了部分动画的移植, 如下所示:

  • FadeTo
  • RotateTo
  • ScaleTo
  • TranslateTo 说明: ViewExtensions 类提供了可用于构建简单动画的扩展方法。 动画文档(此处引用Xamarin动画文档即可): https://docs.microsoft.com/zh-cn/xamarin/xamarin-forms/user-interface/animation/simple

4.Shell容器 在Xamarin当中已经有了Shell, 不出意外本次更新也是添加了对Shell的支持。

演示

为了能够清楚的了解本次的几个更新, 下面通过运行官方的案例来查看本次更新内容: 1.动画 通过演示的代码中, 我们可以看到在OnAppearing函数中调用了TransitionIn方法然后循环了所有Frame调用扩展方法FadeTo动画, 如下所示:

代码语言:javascript
复制
        protected override async void OnAppearing()
        {
            base.OnAppearing();
            await Task.Delay(300);
            TransitionIn();
        }

        async void TransitionIn()
        {
            foreach (var item in tiles)
            {
                item.FadeTo(1, 800);
                await Task.Delay(50);
            }
        }

说明: 上面有讲到, 这些动画本质上是移植了Xamarin的部分, 这些动画都是ViewExtensions的扩展方法, 如下所示:

通过查看扩展方法我们可以了解到一些基本信息, 然后我们修改一些动画行为, 来测试一下实际效果, 如下所示:

  • 淡入淡出动画
  • 旋转动画
  • 缩放动画

2.UI组件

3.WinUI项目合并

除了简化的、共享的单个项目外,还对VisualStudio进行了更改,以支持单个项目。这些更改将启用单个项目中的共享资源文件、用于平台特定开发的平台文件以及用于运行.NET MAUI 应用程序的简化调试目标选择:

关于自定义控制

MAUI提供可用于显示数据、操作、指示活动、显示集合、拾取数据等的控件集合。默认情况下,处理程序将这些跨平台控件映射到每个平台上的原生控件。 例如,在iOS上, .NET MAUI处理程序将映射到 iOS 的 .NET MAUI。在Andorid上,将映射为:Button UIButton Button AppCompatButton

处理程序可以通过 .NET MAUI 提供的特定于控制的界面访问,例如。这避免了跨平台控制必须参考其处理程序,并且处理程序必须参考跨平台控制。跨平台控制 API 到平台 API 的映射由映射器提供。IButtonButton

如何查看并且运行MAUI示例项目

参考: https://devblogs.microsoft.com/dotnet/announcing-net-maui-preview-5/ 官方文档: https://docs.microsoft.com/zh-cn/dotnet/maui/what-is-maui

Preview5 UI组件更新一览(相比Preview4)

✅ CheckBox Preview4

API

Android

iOS / Mac Catalyst

Windows

Color

⚠️

⚠️

⚠️

CheckedChanged

IsChecked

Preview5

API

Android

iOS / Mac Catalyst

Windows

Color

CheckedChanged

IsChecked

⚠️ DatePicker Preview4

API

Android

iOS / Mac Catalyst

Windows

BackgroundColor

⚠️

CharacterSpacing

Date

DateSelected

FontAttributes

FontFamily

FontSize

Format

MaximumDate

MinimumDate

TextColor

⚠️

Preview5

API

Android

iOS / Mac Catalyst

Windows

BackgroundColor

CharacterSpacing

Date

DateSelected

FontAttributes

FontFamily

FontSize

Format

MaximumDate

MinimumDate

TextColor

⚠️ Editor Preview4

API

Android

iOS / Mac Catalyst

Windows

AutoSize

⚠️

⚠️

⚠️

Completed

CharacterSpacing

⚠️

FontAttributes

FontFamily

FontSize

IsReadOnly

IsTextPredictionEnabled

⚠️

PlaceHolder

⚠️

PlaceHolderColor

⚠️

Text

TextColor

⚠️

MaxLength

Preview5

API

Android

iOS / Mac Catalyst

Windows

AutoSize

Completed

CharacterSpacing

FontAttributes

FontFamily

FontSize

IsReadOnly

IsTextPredictionEnabled

⚠️

PlaceHolder

⚠️

PlaceHolderColor

⚠️

Text

TextColor

⚠️

MaxLength

⚠️ Entry Preview4

API

Android

iOS / Mac Catalyst

Windows

ClearButtonVisibility

⚠️

CharacterSpacing

⚠️

Completed

CursorPosition

⚠️

⚠️

⚠️

FontAttributes

⚠️

FontFamily

⚠️

FontSize

⚠️

HorizontalTextAlignment

⚠️

IsTextPredictionEnabled

⚠️

IsPassword

PlaceHolder

PlaceHolderColor

⚠️

⚠️

⚠️

VerticalTextAlignment

⚠️

ReturnCommand

⚠️

⚠️

⚠️

ReturnCommandParameter

⚠️

⚠️

⚠️

ReturnType

SelectionLength

⚠️

⚠️

⚠️

Text

TextColor

⚠️

Preview5

API

Android

iOS / Mac Catalyst

Windows

ClearButtonVisibility

CharacterSpacing

Completed

CursorPosition

⚠️

FontAttributes

FontFamily

FontSize

HorizontalTextAlignment

⚠️

IsTextPredictionEnabled

⚠️

IsPassword

PlaceHolder

PlaceHolderColor

⚠️

⚠️

⚠️

VerticalTextAlignment

⚠️

ReturnCommand

⚠️

⚠️

⚠️

ReturnCommandParameter

⚠️

⚠️

⚠️

ReturnType

SelectionLength

⚠️

Text

TextColor

⚠️ SearchBar Preview4

API

Android

iOS / Mac Catalyst

Windows

BackgroundColor

⚠️

CharacterSpacing

CancelButtonColor

⚠️

⚠️

⚠️

FontAttributes

⚠️

FontSize

⚠️

HorizontalTextAlignment

⚠️

MaxLength

SearchCommand

⚠️

⚠️

⚠️

SearchCommandParameter

⚠️

⚠️

⚠️

Text

TextColor

⚠️

VerticalTextAlignment

⚠️

⚠️

⚠️

Preview5

API

Android

iOS / Mac Catalyst

Windows

BackgroundColor

⚠️

CharacterSpacing

CancelButtonColor

FontAttributes

⚠️

FontSize

⚠️

HorizontalTextAlignment

⚠️

MaxLength

SearchCommand

⚠️

⚠️

⚠️

SearchCommandParameter

⚠️

⚠️

⚠️

Text

TextColor

⚠️

VerticalTextAlignment

⚠️

⚠️

⚠️

⚠️ Shapes Preview4

API

Android

iOS / Mac Catalyst

Windows

Fill

⚠️

Stroke

⚠️

StrokeDashArray

⚠️

StrokeDashOffset

⚠️

StrokeLineCap

⚠️

StrokeLineJoin

⚠️

StrokeMiterLimit

⚠️

StrokeThickness

⚠️

Preview5

API

Android

iOS / Mac Catalyst

Windows

Fill

Stroke

StrokeDashArray

StrokeDashOffset

StrokeLineCap

StrokeLineJoin

StrokeMiterLimit

StrokeThickness

⚠️ Slider Preview4

API

Android

iOS / Mac Catalyst

Windows

DragCompleted

DragCompletedCommand

⚠️

DragStarted

DragStartedCommand

Maximum

MaximumTrackColor

Minimum

MinimumTrackColor

ThumbColor

⚠️

Value

ValueChanged

Preview5

API

Android

iOS / Mac Catalyst

Windows

DragCompleted

DragCompletedCommand

DragStarted

DragStartedCommand

Maximum

MaximumTrackColor

Minimum

MinimumTrackColor

ThumbColor

ThumbImageSource

Value

ValueChanged

✅ View Transforms Preview4

Feature

Android

iOS / Mac Catalyst

Windows

View Transforms

Preview5

Feature

Android

iOS / Mac Catalyst

Windows

View Transforms

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JusterZhu 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • MAUI Preview5
  • 本次更新内容
  • 演示
  • 关于自定义控制
  • 如何查看并且运行MAUI示例项目
  • Preview5 UI组件更新一览(相比Preview4)
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档