问题描述:
有一个按钮,点击按钮会创建并显示一个AlertView,同时执行耗时任务,耗时任务是在子线程中进行的,子线程执行完成之后,会调用finishBlock,改变AlertView的显示。当我多次点击按钮时,出现AlertView显示错乱。
问题原因:
finishBlock可能不在主线程中,更新UI的操作必须在子线程中进行,否则会出现问题,因此,如果不知finishBlock是在子线程还是主线程中执行,判断如果不在主线程,把要更新UI的操作放到主线程中执行。
问题描述:
有一个按钮,点击按钮会创建并显示一个AlertView,同时执行耗时任务,耗时任务是在子线程中进行的,子线程执行完成之后,会调用finishBlock,改变AlertView的显示。当我多次点击按钮时,出现AlertView显示错乱。
问题原因:
finishBlock可能不在主线程中,更新UI的操作必须在子线程中进行,否则会出现问题,因此,如果不知finishBlock是在子线程还是主线程中执行,判断如果不在主线程,把要更新UI的操作放到主线程中执行。