我在MainView中有一个MainView,并且我不断地向它添加很多数据(每秒超过2-10行)。此外,我有一个按钮,下面的动作:
button.action {
val window = find<AnotherView>("param" to mainViewModel.param)
window.openModal(modality = Modality.WINDOW_MODAL, escapeClosesWindow = false)
}
UI (特别是tableView )在我点击按钮时冻结1-1.5秒,而数据是在tableView中添加的。如果我关闭AnotherView并再次单击按钮,新窗口将打开,几乎不冻结tableView。
有人知道怎么解决这个问题吗?
发布于 2020-01-21 15:40:21
听起来像是在获取UI线程上的数据。您需要在后台线程中获取数据,并且只有在有可用数据时才更新表项。一个简单的方法是运行使用runAsync { fetchData() }
ui { table.items = it }, or even use the
表。如果这不能解决这个问题,您需要在AnotherView
中发布代码,这样我们就可以看到瓶颈所在。
https://stackoverflow.com/questions/59843453
复制相似问题