【发布时间】:2019-09-20 00:54:40
【问题描述】:
我知道这个问题在这里出现了很多次,但适用于所有这些情况的答案对我来说并不适用。当活动开始时,我正在截取屏幕截图。我在 onCreate 的底部执行我的代码。它在 5 次中的 4 次中运行良好,而第 5 次屏幕尚未渲染,您会得到黑色屏幕截图。
我的解决方法是在 onCreate 结束时启动的 AsyncTask 中执行屏幕截图代码。如果我睡眠 200 毫秒,它会工作 10 次中的 9 次。 500 毫秒的睡眠可以 100% 获得它,但您会注意到延迟。这似乎也是一个糟糕的解决方案,因为 500 毫秒是一个任意数字,可能不适用于所有设备。
如何知道 UI 何时呈现,以便截取屏幕截图?
【问题讨论】:
-
调用 View.post() 并在 run() 方法中完成你的工作
标签: android