0

根据微软的文档,

Acrylic 会自动调整其外观以适应各种设备和环境。

在高对比度模式下,用户继续看到他们选择的熟悉的背景颜色,而不是丙烯酸。此外,背景亚克力和应用内亚克力均显示为纯色

When the user turns off transparency in Personalization settings
When battery saver mode is activated
When the app runs on low-end hardware

此外,只有背景亚克力会用纯色替换其透明度和纹理

When an app window on desktop deactivates
When the UWP app is running on phone, Xbox, HoloLens or tablet mode

我有两个关于亚克力刷的疑问。

1)是否可以检测到低端设备何时禁用丙烯酸刷?

2)是否有用户订阅启用/禁用丙烯酸刷的任何事件?因为有一个设置可用于在所有应用程序中切换丙烯酸笔刷。 在此处输入图像描述

PS:我没有尝试使用后备颜色。

4

1 回答 1

1

可以借助 UISettings.AdvancedEffectsEnabled 布尔值检查透明效果模式。

还有一个事件 UISettings.AdvancedEffectsEnabledChanged 用于订阅透明度模式设置的更改。

    UISettings settings = new UISettings();

    private bool _IsTransparencyEnabled = settings.AdvancedEffectsEnabled;

    settings.AdvancedEffectsEnabledChanged += settings_AdvancedEffectsEnabledChanged;

    private void settings_ColorValuesChanged(UISettings sender, object args)
    {
        settings = (UISettings)sender;
        _IsTransparencyEnabled = settings.AdvancedEffectsEnabled;
        //TODOD: Do other necessary actions when transparency has changed.
    }
于 2017-07-12T08:53:39.143 回答