如何在 UWP 中显示加载图像
本文关键字:显示 加载 图像 UWP | 更新日期: 2023-09-27 18:37:23
我正在开发一个UWP应用程序。当用户单击任何控件时,如果该控件需要更长的时间才能执行其任务,我想向用户显示一个指示,例如操作需要很长时间,请等待屏幕中央的图像。如何在 UWP 应用程序中执行此操作?
我认为如果我是对的,我们的 UWP 正在研究单线程概念。
请给我你解决这个问题的建议。
指示长时间运行的操作的最佳方法是使用内置的 ProgressRing
控件:
<ProgressRing x:Name="LoadingIndicator" />
长时间运行的操作应作为async
方法实现。您可以按如下方式调用它:
try
{
LoadingIndicator.IsActive = true;
await LongOperationAsync();
}
finally
{
LoadingIndicator.IsActive = false;
}
将IsActive
设置为 true
将显示进度环并开始旋转。将其设置回false
将再次隐藏并停用它。在执行LongOperationAsync
时,应用程序将响应,用户将能够与之交互。
如果您使用的是 MVVM,您当然可以设置布尔属性并将其绑定到IsActive
属性。
不确定,你听说过 UWP 应用的"单线程概念",但没有什么能阻止你的应用进行多线程处理。事实上,你不能直接使用 Thread
类,但无论如何你应该改用Task
。
FFImageLoading 它使用各种方法来优化图像加载(包括下载/内存缓存),并且还支持加载/错误占位符:
<ff:FFImage VerticalAlignment="Stretch"
HorizontalAlignment="Stretch"
TransformPlaceholders="False"
LoadingPlaceholder="loading.png"
ErrorPlaceholder="error.png"
Height="500"
Width="500"
Source="http://loremflickr.com/600/600/nature?filename=simple.jpg">