怎么没人提防止多次点击的问题,多普遍的问题啊
本帖最后由 likehs 于 2018-12-7 14:49 编辑这么普遍的问题,居然没人提出,难道都是高手自己解决了?还是不在乎用户体验?
例如:点击按钮后,连接网络,弹出一个提示框,由于网络延迟卡顿等原因,界面时没反应的,继续点击按钮3次,最后出来4个同样的提示框,需要关闭4次,这肯定是不行的。
我试了下解决方法:
点击后立即按钮禁止再次单击,这个确实有效,弹出提示框前,不能连续单击了,
但我需要弹出提示框后,按钮应该可以重新能单击,然后我在提示框语句后加入按钮可以单击。
正常的逻辑功能是:点击按钮-按钮不可单击-弹出提示框-按钮可单击。
那么正常的操作应该是在提示框前是不可单击的,提示框后才能重新单击按钮,在易语言时也是用的这个思路,运行完全没问题,
但在火山问题就来了,实际测试时,在提示框弹出前连续单击依然有效,弹出多个提示框。
这说明,在实际测试时,提示框还没弹出来时,后台程序已经秒执行到按钮可以再次单击这步了,造成了按钮单击禁止形同虚设。然后想加入延迟,但火山没有直接的延迟命令,引入thread.sleep方法,实际测试不起作用,原因未知。
这个问题怎么破?或者大家有什么其他的解决方法分享下。
用进度框做等待 这个本来就自带的, 你点击后 然后按钮 支持单击设置为假等网络响应完成后再设置回来 支持单击=真 问题就是网络还没响应完,按钮单击=真已经提前生效了,立马就让按钮可以被单击了 你用的是异步访问吧 没有阻塞当前线程 程序直接向下执行了 你需要用多线程加载网络数据。不然ui肯定会卡的 防止多次点击,这就需要你自己去写逻辑代码判断了。。这个问题其实不属于解答范围。
页:
[1]