我在 Google Play 开发者控制台中遇到崩溃和 ANR 错误

问题描述 投票:0回答:1

在我的应用程序中,我使用 while 循环。在每个循环中,我将 TableRow 添加到 TableView 当循环次数较多时,由于MainThread繁忙而出现ANR 我尝试过使用 new Thread() 但它不起作用 我尝试过使用 RecycleView 但没有成功 Q1:使用TableView好还是RecycleView好? Q2: 有什么建议可以帮助我解决问题吗?

ANR: com.APPNAME.MainActivity.addTableRow
Crash: android.view.View.onRestoreInstanceState

我的应用程序中的代码示例:

while ( i < loopNum ) {
    Total = (NumberOne + NumberTwo);
    //function to add addTableRow
    addTableRow("i", "NumberOne","NumberTwo",Total)
    NumberOne = Total
    i++;
}

我尝试过使用 new Thread() 但没有用 我尝试过使用 RecycleView 但没有成功

java android crash crashlytics anr
1个回答
0
投票

要在网格中显示大型集合,最好将 RecyclerView 与 GridLayoutManager 结合使用(或使用 LinearLayoutManager,其中每个项目代表一个表行,这将更适合表用例)。 RecyclerView 每次只会渲染必要的项目,并会减少大量主线程工作。

如果您在 RV 实现方面遇到问题,请发布您的代码。

© www.soinside.com 2019 - 2024. All rights reserved.