Android 获取控件导致ANR

Android线上问题,
val cvPostPic = holder.getView(R.id.cv_post_pic);
类似于上述写法,给的泛型为父类 View 没有具体指向控件,正常运行不会报错也不会出现问题,发布到线上之后,部分机型会出现 ANR。
请问是什么问题导致的呢?

这是常规做法,问题不大可能是这个。我估计是其它哪里主线程有耗时操作,导致线程阻塞了,然后这里就超时没执行完,让你误以为是这里的问题。

在上述代码中,holder.getView(R.id.cv_post_pic) 中的是一个泛型参数,但是它并没有指定具体的类型。虽然这在正常运行时不会导致错误,但可能会导致部分机型出现 ANR的问题。

导致anr的原因有很多,题主如何定位到线上是holder.getView(R.id.cv_post_pic) 问题导致的?。 这种写法并没有什么问题,可以把泛型改成具体的类型。