1

我开始开发一个 xposed 模块,但现在我得到一个奇怪的错误。我用了

RecyclerView player_recycler_view=(RecyclerView)card_content.getChildAt(2)

获取 RecyclerView。card_content是 RecyclerView 的父级。

我收到这个错误

java.lang.ClassCastException: android.support.v7.widget.RecyclerView cannot be cast to android.support.v7.widget.RecyclerView

这没有道理!与其他孩子card_content一起一切正常。

先感谢您!

4

1 回答 1

1

@Andrew Sun 应该是正确的,我之前在android.support课堂上观察过这种模式。

尝试比较两个类加载器:

if (RecyclerView.class.getClassLoader() == card_content.getChildAt(2).getClass().getClassLoader()) {
    Log.v(TAG, "Same classloader");
} else {
    Log.v(TAG, "Another classloader");
}

如果它们确实来自不同的类加载器,getClass那么使用card_content.getChildAt(2)和反射你应该能够调用它的方法。

于 2016-09-12T11:08:35.700 回答