昨天周末赶着把项目做完,结果遇到了问题!
给网关发送数据之前,Toast提示"开始发送数据",然后Thread.sleep(1000),发送的数据可能一条,也可能多条,根据项目的电器选择,每次发送数据之后都Thread.sleep(1000),最后全部数据成功之后Toast提示“保存成功”。
在每条数据发送的同时,我也会toast提示“发送数据中”就是因为这样,才出现了问题!!
如果是一条数据,toast很快就能界面显示,但是,如果多条发送,第一条的toast提示无法出现,然后到最后就直接弹出了保存成功的toast,这是为什么?
在主线程中,如果toast之后提示线程阻塞了几秒,那么toast会延迟几秒才出现,如果线程阻塞了太久,又再toast,那么第一个toast就会被第二个覆盖了,甚至是最后一个toast覆盖了!
最先想起的解决办法就是用handler,子线程中不能toast