You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MAUI中DXpopup加载指示器在无Task分页场景下的显示异常问题

页面切换时加载指示器异常问题

我尝试了多种解决方案,使用Task.Run(()=>)能实现需求,但不使用Task时会出现UI冻结,且加载指示器(spinner)仅在页面切换前才显示。现有两个代码示例,第一个可正常运行,但并非所有页面跳转操作都需要依赖Task,我希望第二个示例也能像第一个一样正常工作。

可行示例:

if (IsBusy) return;
       Platforms.KeyboardHelper.HideKeyboard();
       GlobalConstants.costantSpinner.Show();
       try
       {           
           GlobalVariables._loginDTO = await Task.Run(() => /*页面切换前的操作*/);
           await Shell.Current.GoToAsync("somePage");
       }
       catch (Exception ex) {/* 显示异常信息 */ }
       finally { IsBusy = false; GlobalConstants.costantSpinner.IsOpen = false; }

该示例在页面切换前存在操作时可完美运行。

不可行示例:

if (IsBusy) return;
            GlobalConstants.costantSpinner.Show();
            try { IsBusy = true; await Shell.Current.GoToAsync(/*目标页面*/); }
            catch (Exception ex) {/* 显示异常信息 */}
            finally { IsBusy = false; GlobalConstants.costantSpinner.IsOpen = false; }

内容的提问来源于stack exchange,提问作者Buğra Kaan Sağlam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 11:00:01