如何在不等待 UI 线程的其余部分完成的情况下显示视图?

How can I display a view without waiting for the rest of the UI thread to finish?

基本上我有一个弹出窗口 window,我正在尝试启动它并在我的 UI 加载其余部分时打开它(一些 canvas 调用需要一两秒钟),但我得到的行为是弹出窗口 window 直到一切都完成 运行 才会显示。我实际上只是在 canvas 绘制之前在弹出窗口 window 上调用 show。没有什么花哨。我怎样才能让弹出窗口 window 首先出现,这样我就可以隐藏我加载的其余部分?

只需将初始化 canvas 部分的代码放入可运行程序中,然后 post 将其放入 ui 线程。这样可以在 ui 完成设置之前显示弹出窗口。

如果你要画一两秒钟,你应该在另一个线程上做,而不是 UI 线程。然后通知 UI 线程在完成后再次更新。这样做,您将拥有一个响应式应用程序,它会显示对话框。