我有一个按钮,当用户单击它时,它将更新整个 UI(文本视图、图形)。UI 的内容来自一个 SQLite 数据库,我将更新函数命名为 loading()。您可以想象,在 loading() 内部,有很多数据库操作和 UI 更新。当数据变大时,这个loading()完成的时间会变长,所以按钮会保持在按下状态的时间会更长。
我尝试使用asynctask来处理这种情况,以便出现progressdialog 而不是冻结按钮,但是我无法将loading() 方法放在asynctask 的doinbackground() 上,因为doinbackground() 无法触及声明的UI 组件来自其活动的 onCreate() 方法。
我不想重写 loading() 函数。
还有什么办法可以吗??请帮忙,如果可以的话,请提供一些例子,我很感激。