基于平台和设备成语自定义 UI 外观

您所在的位置:网站首页 wallpaper怎么改主题 基于平台和设备成语自定义 UI 外观

基于平台和设备成语自定义 UI 外观

2023-05-06 18:06| 来源: 网络整理| 查看: 265

基于平台和设备成语自定义 UI 外观 项目 05/05/2023

浏览示例

.NET 多平台应用 UI (.NET MAUI) 应用可以针对特定平台和设备自定义其 UI。 这使你的应用能够:

最有效地利用空间。 如果你将应用设计为在移动设备上外观良好,该应用仍可在桌面设备上使用,但很有可能会浪费一些空间。 你可以自定义应用,以在屏幕超过特定大小时显示更多内容。 例如,购物应用可能在移动设备上一次显示一个项目,但可能会在桌面设备上显示多个项目。 此外,通过在屏幕上放置更多内容,可以减少用户需要执行的导航量。 利用设备功能。 某些设备更有可能具有某些功能。 例如,移动设备更有可能具有位置传感器和相机,而桌面设备可能也没有。 你的应用可以检测哪些功能可用,并启用使用这些功能的控件。 针对输入进行优化。 可以重新排列 UI 元素,以针对特定输入类型进行优化。 例如,如果将导航元素放在应用底部,移动用户将更容易访问它们。 但桌面用户通常希望看到应用顶部的导航元素。

针对特定平台和设备习惯优化应用的 UI 时,你将创建响应式 UI。 在 .NET MAUI 中创建响应式 UI 的主要方法涉及使用 OnPlatform 标记扩展和 OnIdiom 标记扩展。

注意

有一类触发器(称为状态触发器),可用于在特定方案中(例如设备方向更改时)自定义 UI 外观。 有关详细信息,请参阅 状态触发器。

基于平台自定义 UI 外观

通过 OnPlatform 标记扩展可基于每个平台自定义 UI 外观。 它提供与 和 On 类相同的功能OnPlatform,但具有更简洁的表示形式。

OnPlatformExtension 类支持 OnPlatform 标记扩展,并定义以下属性:

Default 类型 object为 的 ,你将其设置为要应用于表示平台的属性的默认值。 Android 的类型 object为 ,你将其设置为要在 Android 上应用的值。 iOS 的类型 object为 ,你将其设置为要在 iOS 上应用的值。 MacCatalyst 的类型 object为 ,设置为要应用于 Mac Catalyst 的值。 Tizen 的类型 object为 ,你将其设置为要应用于 Tizen 平台的值。 WinUI 的类型 object为 ,你将其设置为要应用于 WinUI 的值。 Converter 类型 IValueConverter为 ,可将其设置为 IValueConverter 实现。 ConverterParameter 类型 object为 ,可将其设置为要传递给实现的值 IValueConverter 。

注意

XAML 分析程序允许将 OnPlatformExtension 类缩写为 OnPlatform。

属性 Default 是 的内容 OnPlatformExtension属性。 因此,对于用大括号表示的 XAML 标记表达式,如果表达式是第一个参数,则可以消除 Default= 表达式的 部分。 如果未设置 属性 Default ,则它将默认为 BindableProperty.DefaultValue 属性值,前提是标记扩展面向 BindableProperty。

重要

XAML 分析程序要求向使用 OnPlatform 标记扩展的属性提供正确类型的值。 如果需要类型转换,标记 OnPlatform 扩展将尝试使用 .NET MAUI 提供的默认转换器执行该转换。 但是,某些类型转换不能由默认转换器执行,在这些情况下, Converter 属性应设置为 IValueConverter 实现。

OnPlatform 演示页显示如何使用OnPlatform标记扩展:

在此示例中,所有三个 OnPlatform 表达式都使用类名的 OnPlatformExtension 缩写版本。 这三个OnPlatform标记扩展在 xref:Microsoft.Maui.Graphics.ColoriOS 和 Android 上将 的 BoxView 、 WidthRequest和 HeightRequest 属性设置为不同的值。 标记扩展还为未指定的平台上的这些属性提供默认值,同时消除 Default= 表达式的 部分。

基于设备成语自定义 UI 外观

标记 OnIdiom 扩展使你能够基于运行应用的设备的成语自定义 UI 外观。 它受 OnIdiomExtension 类的支持,类定义以下属性:

Default 类型 object为 的 ,设置为要应用于表示设备习惯用语的属性的默认值。 Phone 的类型 object为 ,你将其设置为要在手机上应用的值。 Tablet 的类型 object为 ,你将其设置为要应用于平板电脑的值。 Desktopobject类型为 ,设置为要应用于桌面平台的值。 TV 的类型 object为 ,你将其设置为要应用于电视平台的值。 Watch 的类型 object为 ,你将其设置为要应用于监视平台的值。 Converter 类型 IValueConverter为 ,可将其设置为 IValueConverter 实现。 ConverterParameter 类型 object为 ,可将其设置为要传递给实现的值 IValueConverter 。

注意

XAML 分析程序允许将 OnIdiomExtension 类缩写为 OnIdiom。

属性 Default 是 的内容 OnIdiomExtension属性。 因此,对于用大括号表示的 XAML 标记表达式,如果表达式是第一个参数,则可以消除 Default= 表达式的 部分。

重要

XAML 分析程序要求向使用 OnIdiom 标记扩展的属性提供正确类型的值。 如果需要类型转换,标记 OnIdiom 扩展将尝试使用 .NET MAUI 提供的默认转换器执行该转换。 但是,某些类型转换不能由默认转换器执行,在这些情况下, Converter 属性应设置为 IValueConverter 实现。

以下 XAML 示例演示如何使用 OnIdiom 标记扩展:

在此示例中,所有三个 OnIdiom 表达式都使用类名的 OnIdiomExtension 缩写版本。 这三个OnIdiom标记扩展将 Color的 BoxView 、 WidthRequest和 HeightRequest 属性设置为手机、平板电脑和桌面习惯用语上的不同值。 标记扩展还为未指定的习惯用语上的这些属性提供默认值,同时消除表达式的 部分 Default= 。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3